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

#define CLOSE_PROGRAM fclose(input); fclose(output); return 0;

int main(void)	{
	FILE *input = fopen("pal.in","r"), *output = fopen("pal.out","w");
	char *array;
	long int i,j,mid,len;
	fscanf(input,"%ld",&len);
	array = (char *) malloc(len);
	fscanf(input,"%s",array);
	if(len % 2)	{					//Βρίσκω το μέσο
		mid  = len / 2 + 1;			//
	}else	{						//
		mid = len / 2;				//
	}
	i = mid - 1;
	j = mid + 1;
	while(array[i] == array[j])	{	//Βρίσκω το μέχρι πού είναι ίδια τα indexes
		i--;						//
		j++;						//
	}
	if(i == 0 && j == len)	{ 		//Είναι παλίνδρομο!
		fprintf(input,"%ld",len);
		CLOSE_PROGRAM
	}
	array = (char *) realloc(array,len + (len - 1));
	for(mid = len - 1, i = mid - 1, j = mid + 1; i >= 0; i--, j++)	{
		array[j] = array[i];
	}
	fprintf(output,"%s",array);
	CLOSE_PROGRAM
}
