#include<bits/stdc++.h>
using namespace std;
list<int> l;
int n,k,p,m;
int main(){
cin>>n;
l.push_back(1);
for(int i=2;i<=n;i++){
cin>>k>>p;
if(p==0){
auto it=l.begin();
while(it!=l.end()){
if(*it==k)break;
it++;
}
l.insert(it,i);
}else{
auto it=l.begin();
while(it!=l.end()){
if(*it==k)break;
it++;
}
it++;
l.insert(it,i);
}
}
cin>>m;
for(int i=1;i<=m;i++){
cin>>k;
auto it=l.begin();
while(it!=l.end()&&*it!=k){
it++;
}
if(it!=l.end())l.erase(it);
}
auto it=l.begin();
while(it!=l.end()){
cout<<*it<<" ";
it++;
}
return 0;
}