/// Floyd muoii
/// https://v...content-available-to-author-only...j.com/problems/FLOYD/
#include <bits/stdc++.h>
using namespace std;
#define tag "main"
#define maxn 107
#define oo 1000000007LL
#define mid ((l+r)>>1)
#define getbit(x,i) ((x)>>(i)&1)
#define onbit(x,i) ((x)|(1<<(i)))
#define offbit(x,i) ((x)&~(1<<(i)))
#define cntbit(x) (__builtin_popcountll(x))
#define meset(a,x) memset(a,x,sizeof(a))
#define forinc(i,a,b) for(int i=a;i<=b;i++)
#define fordec(i,a,b) for(int i=a;i>=b;i--)
#define debug(x) cerr<<#x<<" = "<<x<<"\n"
#define runtime(stime) ((clock() - stime) / CLOCKS_PER_SEC * 1000)
#define checkfile(FiLeNaMe) { if(fopen(FiLeNaMe".inp","r")) freopen(FiLeNaMe".inp","r",stdin),freopen(FiLeNaMe".out","w",stdout); }
template<typename T> inline void inp(T &x) { static char k; static bool neg; while((k=getchar())!='-' && !isdigit(k)); neg = k=='-'; x=(neg=k=='-')?0:k-48; while(isdigit(k=getchar())) x = (x<<3) + (x<<1) + k-48; x=neg?-x:+x; }
template<typename T> inline void out(T x) { if(x<0) putchar('-'),x=-x; if(x>9) out(x/10); putchar(x%10+48); }
#define space putchar(' ')
#define endline putchar('\n')
#define inpint ({ int x; inp(x); x; })
#define inpchar ({ char k; while((k=getchar())==' ' || k=='\n'); k; })
#define inpstr ({ char k; while((k=getchar())==' ' || k=='\n'); string s=""; s+=k; while((k=getchar())!=' ' && k!='\n') s+=k; s; })
/// --------------------------------------------------------------------------------------------------------------------------------
#define long long long
#define fi first
#define se second
#define maxm 20007
#define oo 1000000007
int n,m,q;
int d[maxn][maxn];
int trace[maxn][maxn];
void tracing(int u,int v,int l=1) {
if(v==0 || v==u) {
cout<<l<<" "<<u;
return;
}
tracing(u,trace[u][v],l+1);
cout<<" "<<v;
}
void floyd() {
forinc(i,1,n) d[i][i]=0,trace[i][i]=i;
forinc(k,1,n)
forinc(i,1,n)
forinc(j,1,n)
if(d[i][j] > d[i][k]+d[k][j]) {
d[i][j] = d[i][k]+d[k][j];
trace[i][j]=k;
}
}
void enter(){
cin>>n>>m>>q;
meset(d,60);
int u,v,w;
forinc(i,1,m) {
cin>>u>>v>>w;
d[u][v]=d[v][u]=min(d[v][u],w);
}
}
void solve(){
floyd();
int k,u,v;
forinc(t,1,q) {
cin>>k>>u>>v;
if(k==0) cout<<d[u][v]<<"\n";
else tracing(u,v),cout<<"\n";
}
}
int32_t main()
{
checkfile(tag);
ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
enter();
solve();
return 0;
}
Ly8vIEZsb3lkIG11b2lpCi8vLyBodHRwczovL3YuLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLmouY29tL3Byb2JsZW1zL0ZMT1lELwojaW5jbHVkZSA8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKI2RlZmluZSB0YWcgIm1haW4iCiNkZWZpbmUgbWF4biAxMDcKI2RlZmluZSBvbyAxMDAwMDAwMDA3TEwKI2RlZmluZSBtaWQgKChsK3IpPj4xKQojZGVmaW5lIGdldGJpdCh4LGkpICgoeCk+PihpKSYxKQojZGVmaW5lIG9uYml0KHgsaSkgKCh4KXwoMTw8KGkpKSkKI2RlZmluZSBvZmZiaXQoeCxpKSAoKHgpJn4oMTw8KGkpKSkKI2RlZmluZSBjbnRiaXQoeCkgKF9fYnVpbHRpbl9wb3Bjb3VudGxsKHgpKQojZGVmaW5lIG1lc2V0KGEseCkgbWVtc2V0KGEseCxzaXplb2YoYSkpCiNkZWZpbmUgZm9yaW5jKGksYSxiKSBmb3IoaW50IGk9YTtpPD1iO2krKykKI2RlZmluZSBmb3JkZWMoaSxhLGIpIGZvcihpbnQgaT1hO2k+PWI7aS0tKQojZGVmaW5lIGRlYnVnKHgpIGNlcnI8PCN4PDwiID0gIjw8eDw8IlxuIgojZGVmaW5lIHJ1bnRpbWUoc3RpbWUpICgoY2xvY2soKSAtIHN0aW1lKSAvIENMT0NLU19QRVJfU0VDICogMTAwMCkKI2RlZmluZSBjaGVja2ZpbGUoRmlMZU5hTWUpIHsgaWYoZm9wZW4oRmlMZU5hTWUiLmlucCIsInIiKSkgZnJlb3BlbihGaUxlTmFNZSIuaW5wIiwiciIsc3RkaW4pLGZyZW9wZW4oRmlMZU5hTWUiLm91dCIsInciLHN0ZG91dCk7IH0KdGVtcGxhdGU8dHlwZW5hbWUgVD4gaW5saW5lIHZvaWQgaW5wKFQgJngpIHsgc3RhdGljIGNoYXIgazsgc3RhdGljIGJvb2wgbmVnOyB3aGlsZSgoaz1nZXRjaGFyKCkpIT0nLScgJiYgIWlzZGlnaXQoaykpOyBuZWcgPSBrPT0nLSc7IHg9KG5lZz1rPT0nLScpPzA6ay00ODsgd2hpbGUoaXNkaWdpdChrPWdldGNoYXIoKSkpIHggPSAoeDw8MykgKyAoeDw8MSkgKyAgay00ODsgeD1uZWc/LXg6K3g7IH0KdGVtcGxhdGU8dHlwZW5hbWUgVD4gaW5saW5lIHZvaWQgb3V0KFQgeCkgeyBpZih4PDApIHB1dGNoYXIoJy0nKSx4PS14OyBpZih4PjkpIG91dCh4LzEwKTsgcHV0Y2hhcih4JTEwKzQ4KTsgfQojZGVmaW5lIHNwYWNlIHB1dGNoYXIoJyAnKQojZGVmaW5lIGVuZGxpbmUgcHV0Y2hhcignXG4nKQojZGVmaW5lIGlucGludCAoeyBpbnQgeDsgaW5wKHgpOyB4OyB9KQojZGVmaW5lIGlucGNoYXIgKHsgY2hhciBrOyB3aGlsZSgoaz1nZXRjaGFyKCkpPT0nICcgfHwgaz09J1xuJyk7IGs7IH0pCiNkZWZpbmUgaW5wc3RyICh7IGNoYXIgazsgd2hpbGUoKGs9Z2V0Y2hhcigpKT09JyAnIHx8IGs9PSdcbicpOyBzdHJpbmcgcz0iIjsgcys9azsgd2hpbGUoKGs9Z2V0Y2hhcigpKSE9JyAnICYmIGshPSdcbicpIHMrPWs7IHM7IH0pCiAKLy8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNkZWZpbmUgbG9uZyBsb25nIGxvbmcKI2RlZmluZSBmaSBmaXJzdAojZGVmaW5lIHNlIHNlY29uZAojZGVmaW5lIG1heG0gMjAwMDcKI2RlZmluZSBvbyAxMDAwMDAwMDA3CmludCBuLG0scTsKaW50IGRbbWF4bl1bbWF4bl07CmludCB0cmFjZVttYXhuXVttYXhuXTsKIAp2b2lkIHRyYWNpbmcoaW50IHUsaW50IHYsaW50IGw9MSkgewogICAgaWYodj09MCB8fCB2PT11KSB7CiAgICAgICAgY291dDw8bDw8IiAiPDx1OwogICAgICAgIHJldHVybjsKICAgIH0KIAogICAgdHJhY2luZyh1LHRyYWNlW3VdW3ZdLGwrMSk7CiAKICAgIGNvdXQ8PCIgIjw8djsKfQogCnZvaWQgZmxveWQoKSB7CiAgICBmb3JpbmMoaSwxLG4pIGRbaV1baV09MCx0cmFjZVtpXVtpXT1pOwogCiAgICBmb3JpbmMoaywxLG4pCiAgICAgICAgZm9yaW5jKGksMSxuKQogICAgICAgICAgICBmb3JpbmMoaiwxLG4pCiAgICAgICAgICAgICAgICBpZihkW2ldW2pdID4gZFtpXVtrXStkW2tdW2pdKSB7CiAgICAgICAgICAgICAgICAgICAgZFtpXVtqXSA9IGRbaV1ba10rZFtrXVtqXTsKICAgICAgICAgICAgICAgICAgICB0cmFjZVtpXVtqXT1rOwogICAgICAgICAgICAgICAgfQp9CnZvaWQgZW50ZXIoKXsKICAgIGNpbj4+bj4+bT4+cTsKIAogICAgbWVzZXQoZCw2MCk7CiAKICAgIGludCB1LHYsdzsKICAgIGZvcmluYyhpLDEsbSkgewogICAgICAgIGNpbj4+dT4+dj4+dzsKICAgICAgICBkW3VdW3ZdPWRbdl1bdV09bWluKGRbdl1bdV0sdyk7CiAgICB9Cn0KIAp2b2lkIHNvbHZlKCl7CiAgICBmbG95ZCgpOwogCiAgICBpbnQgayx1LHY7CiAgICBmb3JpbmModCwxLHEpIHsKICAgICAgICBjaW4+Pms+PnU+PnY7CiAKICAgICAgICBpZihrPT0wKSBjb3V0PDxkW3VdW3ZdPDwiXG4iOwogICAgICAgIGVsc2UgdHJhY2luZyh1LHYpLGNvdXQ8PCJcbiI7CiAgICB9Cn0KIAppbnQzMl90IG1haW4oKQp7CiAgICBjaGVja2ZpbGUodGFnKTsKICAgIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oMCk7IGNpbi50aWUoMCk7IGNvdXQudGllKDApOwogCiAgICBlbnRlcigpOwogICAgc29sdmUoKTsKIAogICAgcmV0dXJuIDA7Cn0KIA==