#include<cstdio>
#include<algorithm>
#include<iostream>
#include<cmath>
#include<queue>
#include<string>
#include<set>
using namespace std;
void print(const string &s,int len,char w)
{
cout<<s;
for(int i=0;i<len-s.length();i++)
cout<<w;
}
int main()
{
string filename[100];
int n,len=0;
while(cin>>n){
for(int i=0;i<n;i++){
cin >> filename[i];
len=max(len,(int)filename[i].length());
}
int column,row;
column=(60-len)/(len+2)+1;
row=(n-1)/column+1;
for(int i=0;i<60;i++){
printf("-");
}
printf("\n");
sort(filename,filename+n);
for(int r=0;r<row;r++){
for(int c=0;c<column;c++){
int x = c*row + r;
if(x<n)print(filename[x],c==column-1?len:len+2,' ');
}
printf("\n");
}
}
return 0;
}