import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNextLine()) { 
            String a = in.nextLine();
            int n1=0,n2=3,n3=0;
            int len = a.length();
            int f = 0;
            for(; n2<len; ++n2){//根据题目要求找到符合限制的n1,n3,以及最底下一行的大小f
                for(int k=1;k <= n2;++k){
                    if(2*k+n2 == len+2 && k>n1){//这里取符合条件的最大的k
                        n1=k;
                        n3=k;
                        f=n2;
                    }
                }
            }
            String b[][] = new String[80][80];
            for(int i = 0;i<80;++i){
                for(int j = 0;j<80;++j){
                    b[i][j]=" ";
                }
            }
            for(int i = 0;i<n1-1;++i){
                b[i][0] = a.charAt(i)+"";//从第一行到倒数第二行的  第一个元素
                for(int j = 1;j<f-1;++j){//中间的空格
                    b[i][j]=" ";
                }
                b[i][f-1]=a.charAt(len-i-1)+"";//最后一个元素
            }
            int kk = n1-1;
            for(int i=0;i<f;i++){//最后一行的元素
                b[kk][i]=a.charAt(kk+i)+"";
            }
            for(int i = 0;i<n1;i++){
                for(int j = 0;j<f;j++){
                    System.out.print(b[i][j]);
                }
                System.out.println("");
            }
            
        }
    }
}