#1 AC, #2 WA, #3 WA, #4 WA, #5 AC
#include <bits/stdc++.h>
#ifndef __DEBUG_LIB
#define __DEBUG_LIB
bool isdebug = false;
#define change(x) isdebug = x
#define Debugc \
if (isdebug) cout
#define Debug if (isdebug)
#endif
using namespace std;
#define LL long long
#define Pii pair<int, int>
#define ULL unsigned long long
namespace gdb7 {
int nxt[100010], pre[100010];
bool deled[100010];
signed main() {
memset(deled, true, sizeof(deled));
int n;
cin >> n;
nxt[0] = 1;
nxt[1] = 0;
pre[0] = 1;
pre[1] = 0;
for (int i = 2; i <= n; ++i) {
int k, p;
cin >> k >> p;
deled[i] = false;
if (!p) {
nxt[i] = k;
pre[i] = pre[k];
nxt[pre[k]] = i;
pre[k] = i;
} else {
pre[i] = k;
nxt[i] = nxt[k];
pre[nxt[k]] = i;
nxt[k] = i;
}
}
int m;
cin >> m;
while (m--) {
int x;
cin >> x;
if (!deled[x]) {
pre[nxt[x]] = pre[x];
nxt[pre[x]] = nxt[x];
deled[x] = true;
}
}
for (int i = nxt[0]; i != 0; i = nxt[i]) {
cout << i << " \n"[nxt[i] == 0];
}
return 0;
}
}; // namespace gdb7
signed main() { return gdb7::main(); }