# ITP1_11_B: Dice2

class Dice
  Side = Struct.new :neighbors, :back

  class << self
    def layout_sides(top, front, right, left, back, bottom)
      Hash.new.tap do |sides|
        sides[top]    = Side.new [front, right, back, left], bottom
        sides[front]  = Side.new [bottom, right, top, left], back
        sides[right]  = Side.new [bottom, back, top, front], left
        sides[left]   = Side.new [bottom, front, top, back], right
        sides[back]   = Side.new [top, right, bottom, left], front
        sides[bottom] = Side.new [back, right, front, left], top
      end
    end
  end

  def initialize(labels, top = labels[0], front = labels[1])
    @sides = Dice.layout_sides *labels
    put_as top, front
  end

  def put_as(top, front)
    neighbors  = @sides[top].neighbors
    org_idx    = neighbors.index(front)
    step       = org_idx % neighbors.size
    @neighbors = neighbors.rotate(step)
    @top_side  = top
    self
  end

  def pip_of(side)
    case side
    when :top
      @top_side
    when :bottom
      @sides[@top_side].back
    else
      @neighbors.at case side
      when :front then 0
      when :right then 1
      when :back  then 2
      when :left  then 3
      end
    end
  end
end

labels = gets.split.map &:to_i
n_changes = gets.to_i

dice = Dice.new labels
n_changes.times do
  top, front = gets.split.map &:to_i
  puts dice.put_as(top, front).pip_of(:right)
end