from typing import Optional


class ListNode:
    def __init__(self, val: str):
        self.val = val
        self.prev: Optional["ListNode"] = None
        self.next: Optional["ListNode"] = None


head = ListNode("")
head.next = head
head.prev = head
p = head
node_dict = {}

n, m = list(map(int, input().split()))
s = input().split()

for val in s:
    node = ListNode(val)
    node_dict[val] = node
    p.next = node
    node.prev = p
    p = p.next
p.next = head
head.prev = p

for _ in range(m):
    x, y = input().split()
    x_node = node_dict[x]
    y_node = node_dict[y]

    x_node.prev.next = x_node.next
    x_node.next.prev = x_node.prev

    x_node.prev = y_node.prev
    x_node.next = y_node

    y_node.prev.next = x_node
    y_node.prev = x_node


p = head.next
while p != head:
    print(p.val, end=" ")
    p = p.next