#include <stdio.h>


int main(){
	int i, j;
	char s[128];
	char *t = "qwertyuiopasdfghjklzxcvbnm";
	char u[27];
	/* inizializziamo s e u*/
	for(i=0; i<128; i++)
		s[i]='*';
	for(i=0; i<26; i++){
		u[i]='a'+i;
	}
	u[26]='\0';

	/* leggiamo una stringa */
	scanf("%s", &s[0]);

	/* cifriamo la stringa */
	for(i=0; s[i]!='\0'; i++) {
		s[i]=t[s[i]-'a'];
	}

	/* stampiamo la stringa cifrata */
	printf("Testo cifrato: %s\n", s);


	/* costruiamo la tabella di cifratura inversa */
	for(i=0; i<26; i++)
		for(j=0; j<26; j++)
			if(u[i]==t[j]){
				printf("%c -> %c\n", t[j], 'a'+j);
				u[i]='a'+j;
				break;	
			}
	printf("%s\n", u);

    printf("Testo cifrato: %s\n", s);	
	for(i=0; s[i]!='\0'; i++) {
		s[i]=u[s[i]-'a'];
	}
	/* Stampiamo la stringa decifrata */
	printf("Testo decifrato: %s\n", s);
	return 0;
}
