// 標準入力
var fs = require('fs'),
length = fs.fstatSync(process.stdin.fd).size,
buffer = new Buffer(length),
bytesRead = fs.readSync(process.stdin.fd, buffer, 0, length, 0),
input = buffer.toString('utf8', 0, bytesRead).trim().split('\n');
main();

function main(){
  var thisArr = ["this","uijt","vjku","wklv","xlmw","ymnx","znoy"];
  var theArr = ["the","uif","vjg","wkh","xli","ymj","znk"];
  var thatArr = ["that","uibu","vjcv","wkdw","xlex","ymfy","zngz"];

  for(var i = 0, len = input.length; i < len; i++){
    var target = input[i];
    for(var j = 0, jlen = thisArr.length; j < jlen; j++){
      if(target.indexOf(thisArr[j]) != -1 || target.indexOf(theArr[j]) != -1 || target.indexOf(thatArr[j]) != -1 )
        break;
    }
    console.log(decrypt(target,-1 * j));
  }
}

function decrypt(a, i){
  var result = "";
  for(var j = 0, len = a.length; j < len; j++){
    var t = a.charCodeAt(j);
    if(0x61 <= t){
      result += String.fromCharCode(t + i);
    }else{
      result += a[j];
    }
    
  }
  return result;
}