def dfs_rec(adjLists, visited, v):
visited[v] = True
print(v)
for w in adjLists[v]:
if(not visited[w]):
dfs_rec(adjLists, visited, w)
# Usually dfs_rec() would be sufficient. However, if we don't want to pass
# a boolean array to our function, we can use another function dfs().
# We only have to pass the adjacency list and the source node to dfs(),
#as opposed to dfs_rec(), where we have to pass the boolean array additionally.
def dfs(adjLists, s):
visited = []
n = len(adjLists)
for i in range(n):
visited.append(False)
dfs_rec(adjLists, visited, s)
# ------------------------------------------------------------------
x=input()
a=[]
p=[]
a = [int(i) for i in raw_input().split()]
p = [int(i) for i in raw_input().split()]
z=max(a)
r=min(p)
for l in range(n):
if p[l]==r:
break
adjLists=[[0 for i in range(x-1)]for i in range(z)]
for i in range(x):
k=0
for j in range(x):
if p[i]==p[j]:
adjLists[a(p[j]-1)][k]=a[j]
k=k+1
# test our implementation
dfs(adjLists, a[l])# your code goes here# your code goes here
ZGVmIGRmc19yZWMoYWRqTGlzdHMsIHZpc2l0ZWQsIHYpOgogICAgdmlzaXRlZFt2XSA9IFRydWUKICAgIHByaW50KHYpCiAgICBmb3IgdyBpbiBhZGpMaXN0c1t2XToKICAgICAgICBpZihub3QgdmlzaXRlZFt3XSk6CiAgICAgICAgICAgIGRmc19yZWMoYWRqTGlzdHMsIHZpc2l0ZWQsIHcpCiAKICAgICAgICAgICAgIAojIFVzdWFsbHkgZGZzX3JlYygpIHdvdWxkIGJlIHN1ZmZpY2llbnQuIEhvd2V2ZXIsIGlmIHdlIGRvbid0IHdhbnQgdG8gcGFzcwojIGEgYm9vbGVhbiBhcnJheSB0byBvdXIgZnVuY3Rpb24sIHdlIGNhbiB1c2UgYW5vdGhlciBmdW5jdGlvbiBkZnMoKS4KIyBXZSBvbmx5IGhhdmUgdG8gcGFzcyB0aGUgYWRqYWNlbmN5IGxpc3QgYW5kIHRoZSBzb3VyY2Ugbm9kZSB0byBkZnMoKSwgCiNhcyBvcHBvc2VkIHRvIGRmc19yZWMoKSwgd2hlcmUgd2UgaGF2ZSB0byBwYXNzIHRoZSBib29sZWFuIGFycmF5IGFkZGl0aW9uYWxseS4KZGVmIGRmcyhhZGpMaXN0cywgcyk6CiAgICB2aXNpdGVkID0gW10KICAgIG4gPSBsZW4oYWRqTGlzdHMpCiAgICBmb3IgaSBpbiByYW5nZShuKToKICAgICAgICB2aXNpdGVkLmFwcGVuZChGYWxzZSkKICAgIGRmc19yZWMoYWRqTGlzdHMsIHZpc2l0ZWQsIHMpCiAKIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KeD1pbnB1dCgpCmE9W10KcD1bXQphID0gW2ludChpKSBmb3IgaSBpbiByYXdfaW5wdXQoKS5zcGxpdCgpXSAKcCA9IFtpbnQoaSkgZm9yIGkgaW4gcmF3X2lucHV0KCkuc3BsaXQoKV0Kej1tYXgoYSkKcj1taW4ocCkKZm9yIGwgaW4gcmFuZ2Uobik6CiAgICBpZiBwW2xdPT1yOgogICAgICAgIGJyZWFrCmFkakxpc3RzPVtbMCBmb3IgaSBpbiByYW5nZSh4LTEpXWZvciBpIGluIHJhbmdlKHopXQpmb3IgaSBpbiByYW5nZSh4KToKCWs9MAoJZm9yIGogaW4gcmFuZ2UoeCk6CgkJaWYgcFtpXT09cFtqXToKCQkJYWRqTGlzdHNbYShwW2pdLTEpXVtrXT1hW2pdCgkJCWs9aysxCgkKIAojIHRlc3Qgb3VyIGltcGxlbWVudGF0aW9uCmRmcyhhZGpMaXN0cywgYVtsXSkjIHlvdXIgY29kZSBnb2VzIGhlcmUjIHlvdXIgY29kZSBnb2VzIGhlcmU=