#include <stdio.h>
#include <stdlib.h>

int myStrlen(char s[]){
    int i;
    for(i=0;s[i]!='\0';i++);
    return i;
}

char *setPalindrome(char s[]){
	char *tmp;
	int i, k, l, r;
    int len;
    int isPal;
	len = myStrlen(s);
	for(k=0;k<len;k++){
        isPal = 1;
        l = k;
        r = len - 1;
        while(l < r){
            if(s[l] != s[r]){
                isPal = 0;
                break;
            }
            l++;
            r--;
        }
        if(isPal){
            break;
        }
    }
	tmp = (char *)malloc(sizeof(char) * (len + k + 1));
    if(tmp == NULL){
        printf("ERROR\n");
        return NULL;
    }
    for(i=0;i<len;i++){
        tmp[i] = s[i];
    }
    for(i=0;i<k;i++){
        tmp[len + i] = s[k - 1 - i];
    }
    tmp[len + k] = '\0';

    return tmp;
}

int main(){
    int i;
    char nyuryoku[1024];
    char *kaibun;
    scanf("%s",nyuryoku);
    kaibun = setPalindrome(nyuryoku);
    printf("%s\n  -> %s\n",nyuryoku,kaibun);
    free(kaibun);
    return 0;
}
