#include<iostream>
#include<vector>
using namespace std;
struct edge{
int to,w;
};
int n,m;vector<edge>g[105];
int main(){
cin>>n>>m;
for(int i=0;i<m;i++){
int u,v,w;
cin>>u>>v>>w;
g[u].push_back(edge{v,w});
g[v].push_back(edge{u,w});
}
int now;
cin>>now;
for(int i=0;i<g[now].size();i++)
cout<<g[now][i].to<<" "<<g[now][i].w<<endl;
return 0;
}