N, K, X = gets.split.map( &:to_i ) forward = Array.new( N ) { |i| i + 1 } as = Array.new bs = Array.new f = true K.times do |i| if i + 1 == X then gets f = false next end a, b = gets.split.map( &:to_i ) a -= 1 b -= 1 if f then forward[a], forward[b] = forward[b], forward[a] else as << a bs << b end end as.reverse! bs.reverse! backward = gets.split.map( &:to_i ) as.length.times do |i| backward[ as[i] ], backward[ bs[i] ] = backward[ bs[i] ], backward[ as[i] ] end res = Array.new N.times do |i| if forward[i] != backward[i] res << i + 1 end end puts res.join( ' ' )