class CaesarCipher
  def initialize(str)
    @str_arr = str.split(" ")
    @alphabet = ("a".."z").to_a
  end

  def decipher
    first_word = @str_arr.first.split("").map{|c| c.ord - "a".ord}
    answer = ""
    step_number = 0
    1.step(30, 1) do |i|
      temp = []
      @str_arr.length.times do |j|
        temp.push @str_arr[j].split("").map {|c, s = i|
          if c != "."
            @alphabet[c.ord - "a".ord - s]
          else
            c
          end
        }.join("")
      end
      answer = temp.join(" ")
      break if answer.index("the") || answer.index("this") || answer.index("that")
    end
    answer
  end
end

while line = gets do
  caesar_cipher = CaesarCipher.new(line.chomp)
  puts caesar_cipher.decipher
end