#include using namespace std; typedef long long ll; int n,k,q; int cnt_l,cnt_r; int a[1000011],b[1000011]; int p[1000011],at[1000011]; int v[1000011],ans[1000011]; int head_r[1000011],nxt_r[2000011]; int head_l[1000011],nxt_l[1000011]; int lq[1000011],rx[2000011],rq[2000011]; int main() { scanf("%d%d%d",&n,&k,&q); for(int i=1;i<=k;i++) scanf("%d%d",&a[i],&b[i]); for(int i=1;i<=q;i++) { int l,r,x; scanf("%d%d%d",&l,&r,&x); cnt_l++; cnt_r++; lq[cnt_l] = i; nxt_l[cnt_l] = head_l[l]; head_l[l] = cnt_l; rx[cnt_r] = x; rq[cnt_r] = i; nxt_r[cnt_r] = head_r[r]; head_r[r] = cnt_r; } for(int i=1;i<=n;i++) { p[i] = i; at[i] = i; } for(int i=k;i>=1;i--) { for(int e=head_r[i];e!=-1;e=nxt_r[e]) { int x = rx[e],qid = rq[e]; v[qid] = p[x]; } swap(p[a[i]],p[b[i]]); swap(at[p[a[i]]],at[p[b[i]]]); for(int e=head_l[i];e!=-1;e=nxt_l[e]) { int qid = lq[e]; ans[qid] = at[v[qid]]; } } for(int i=1;i<=q;i++) printf("%d\n",ans[i]); return 0; }