#include using namespace std; #define int long long #define rep(i,l,r) for(int i=(int)(l);i<(int)(r);i++) #define all(x) (x).begin(),(x).end() #define pb push_back templatebool chmax(T &a,T b){if(abool chmin(T &a,T b){if(a>b){a=b;return 1;}return 0;} typedef pair pii; typedef vector vi; typedef vector vvi; const int inf = 1LL<<60; const int mod = 1e9 + 7; const double eps = 1e-9; /*{ }*/ signed main() { int n, k, x; cin >> n >> k >> x; vi a(k), b(k); rep(i, 0, k){ string A, B; cin >> A >> B; if(A != "?"){ a[i] = stoi(A)-1; b[i] = stoi(B)-1; } } vi c(n); rep(i, 0, n) cin >> c[i], c[i]--; vi before(n), after = c; iota(all(before), 0); rep(i, 0, x){ swap(before[a[i]], before[b[i]]); } for(int i = k-1; i >= x; i--){ swap(after[a[i]], after[b[i]]); } vi ans; rep(i, 0, n){ if(before[i] != after[i]){ ans.pb(i+1); } } sort(all(ans)); cout << ans[0] << " " << ans[1] << endl; /* rep(i, 0, n){ cout << before[i] << " "; } cout << endl; rep(i, 0, n){ cout << after[i] << " "; } cout << endl; */ return 0; }