#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
#include <ctype.h>

#define GETSTR(p)       fgets((p), sizeof(p), stdin)
#define CHOMP(p)        do{ char *_q = (p) + strlen(p)-1; if(*_q == '\n') *_q = 0;            } while(0)

int main(void){
    char buf[100];
    while(GETSTR(buf)){
        CHOMP(buf);
        int len = strlen(buf);

        const int nn = 'z' - 'a' + 1;

        while(1){
            for(int i = 0; i < len; i++){
                if(isalpha(buf[i])){
                    buf[i] = 'a' + (buf[i] - 'a' + nn + 1) % nn;
                }
            }
            char buf2[100];
            sprintf(buf2, " %s ", buf);
            int l = strlen(buf2);
            for(int i = 0; i < l; i++){
                if(! isalpha(buf2[i])) buf2[i] = ' ';
            }
            if(strstr(buf2, " the ") != NULL) break;
            if(strstr(buf2, " this ") != NULL) break;
            if(strstr(buf2, " that ") != NULL) break;
        }
        puts(buf);
    }

    return 0;
}