class ListNode:
    def __init__(self, x):
        self.val = x
        self.next = None


def getIntersectionNode(headA: ListNode, headB: ListNode) -> ListNode:
    # 在这里补充代码
    #定义两个指针,分别指向两个链表的头指针
    pa = headA
    pb = headB
    lenA = 0
    lenB = 0
    #遍历两个链表,记录长度
    while pa != None:
        lenA += 1
        pa = pa.next
    while pb != None:
        lenB += 1
        pb = pb.next
    #重新定位指针位置
    pa = headA
    pb = headB
    #判断哪个链表的长度长
    if lenA > lenB:
        n = lenA - lenB
        for _ in range(n):
            pa = pa.next
        #遍历到两个链表距离结尾一样的长度
        while pa != None:
        #如果地址一样就返回交点
            if pa == pb:
                return pa
            pa = pa.next
            pb = pb.next
    else:
        n = lenB - lenA
        for _ in range(n):
            pb = pb.next
        while pa != None:
            if pa == pb:
                return pa
            pa = pa.next
            pb = pb.next
    return None
    pass


# 你不需要关心主函数内容!
def main():
    # 读入数据
    lenA, lenB, commonLen = map(int, input().split())

    # 读入链表A的独立部分
    valuesA = list(map(int, input().split()))
    # 读入链表B的独立部分
    valuesB = list(map(int, input().split()))
    # 读入公共部分
    valuesCommon = list(map(int, input().split()))
    nodesCommon = []
    if commonLen == 0:
        nodesCommon = []
    else:
        nodesCommon = [ListNode(x) for x in valuesCommon]

    # 构建链表
    nodesA = [ListNode(x) for x in valuesA]
    nodesB = [ListNode(x) for x in valuesB]

    # 连接链表A的独立部分
    for i in range(len(nodesA) - 1):
        nodesA[i].next = nodesA[i + 1]

    # 连接链表B的独立部分
    for i in range(len(nodesB) - 1):
        nodesB[i].next = nodesB[i + 1]

    # 连接公共部分
    for i in range(len(nodesCommon) - 1):
        nodesCommon[i].next = nodesCommon[i + 1]

    # 设置头节点并连接公共部分
    headA = None
    headB = None

    if len(nodesA) > 0:
        headA = nodesA[0]
        if len(nodesCommon) > 0:
            nodesA[-1].next = nodesCommon[0]
    elif len(nodesCommon) > 0:
        headA = nodesCommon[0]

    if len(nodesB) > 0:
        headB = nodesB[0]
        if len(nodesCommon) > 0:
            nodesB[-1].next = nodesCommon[0]
    elif len(nodesCommon) > 0:
        headB = nodesCommon[0]

    # 调用函数获取结果
    result = getIntersectionNode(headA, headB)

    # 输出结果
    if result is None:
        print("null")
    else:
        print(result.val)


if __name__ == "__main__":
    main()