d1 = gets.split.map(&:to_i)
d2 = gets.split.map(&:to_i)
dt = Array.new(6)
t = 0
f = 0
2.times do |i|
  idx = 0
  d1.each_with_index do |dir, j|
    if ((dir == d2[i]) && (d1[5-j] == d2[5-i]))
      idx = j
      break
    end
  end
  dt[i] = d1[idx]
  dt[-(i+1)] = d1[5-idx]
  t = idx + 1 if (i == 0)
  f = idx + 1 if (i == 1)
  d1[idx] = nil
  d1[5-idx] = nil
end
case t
when 1,6
  s = [2,3,5,4]
  while (s.include?(f))&&(s[0] != f) do
    s.unshift(s.pop)
  end
  idx = (t == 1) ? s[1] - 1 : s[-1] - 1
when 2,5
  s = [1,4,6,3]
  while (s.include?(f))&&(s[0] != f) do
    s.unshift(s.pop)
  end
  idx = (t == 1) ? s[1] - 1 : s[-1] - 1
when 3,4
  s = [1,2,6,5]
  while (s.include?(f))&&(s[0] != f) do
    s.unshift(s.pop)
  end
  idx = (t == 1) ? s[1] - 1 : s[-1] - 1
else
  puts "No"
end
dt[2] = d1[idx]
dt[3] = d1[5-idx]
puts (dt == d2) ? "Yes" : "No"