
$extra = [",", ".", " ", "\n"]
class Caesar < String
  def nexta(n = 1)
    y = Caesar.new
    self.each_char do |x|
      n.times {x = x.next} if not $extra.include?(x)
      y << x[-1]
    end
    return y
  end
end
$word = ["the", "this", "that"]
def decoded?(caesar)
  caesar.each do |i|
    if $word.include?(i)
      return true
    end
  end
  return false
end
#main
arr = Array.new
while line = gets
  arr << line
end
arr.each do |i|
  a = i.split(" ")
  0.upto(a.length - 1) do |j|
    c = Caesar.new(a[j])
    a[j] = c
  end
  until decoded?(a)
    a = a.map{|j| j.nexta}
  end
  puts a.join(" ")
end  