#include<iostream>
using namespace std;
const int N=10010;
int n,h,k,f[N],ne[N];//静态链表速度较快,不易超时
void add(int b,int a)//添加节点
{int t=f[b];
    f[b]=a;
f[a]=t;
}
void de(int k)//删除
{int te=0;if(k==f[h]){
f[h]=f[k];return ;

}
    for(int i=f[h];i!=0;i=f[i])
{if(f[i]==k)
{f[i]=f[k];

}

}
}
void print()//cout<<;
{
for(int i=h;i;i=f[i]){
cout<<i<<" ";
}
}

int main()
{
cin>>n>>h;
for(int i=0;i<n-1;i++)
{int a,b;cin>>a>>b;
add(b,a);
}cin>>k;
de(k);
print();
return 0;




}