#include <iostream>
#include <cstring>
using namespace std;
const int MAX_LENGTH = 100;
int main() {
char array[MAX_LENGTH + 1], mt[MAX_LENGTH + 1][MAX_LENGTH + 1], secMt[MAX_LENGTH + 1][MAX_LENGTH + 1];
int counter = 0, lengthFin = 0;
while (cin.getline(array, MAX_LENGTH)) {
int asterix = 0;
int length = strlen(array);
for (int j = 0; j < length; ++j) {
if (array[j] == '*') {
++asterix;
}
}
//cout << asterix << " " << length<< "<-\n";
if (asterix < length) {
for (int j = 0; j < length; ++j) {
mt[counter][j] = array[j];
//cout << mt[counter][j] << "<->" << array[j]<< "\n";
}
++counter;
}
lengthFin = length;
}
for (int i = 0 ; i < counter; ++i) {
for (int j = 0 ; j < lengthFin; ++j) {
//cout << mt[i][j];
}
// cout << counter<<".\n"; //counter = 3
}
// TOTUL BINE
//cout << counter << " " << lengthFin; // 3 4
int linie = 0 ; //
for (int i = counter ; i >= 0; --i, ++linie) {
int col = 0;
for (int j = 0; j < lengthFin - 1; ++j, ++col) {
//cout << mt[j][i] <<".";
//cout << j <<i <<".";
if ((mt[j][i] >= 'a' && mt[j][i] <= 'z') || (mt[j][i] >= 'A' && mt[j][i] <= 'Z')) {
//cout << col - 1 <<" " << i <<" \n";
secMt[linie][col] = mt[j][i];
}
}
// cout <<" \n";
}
for (int i = 1 ; i <= counter; ++i) {
for (int j = 0 ; j <= lengthFin + 1; ++j) {
cout << secMt[i][j] ;
}
cout <<".\n";
}
return 0;
}
/*
a*c*
**sd
v*g*
****
=======
****
a*sa
dd*b
***z
===========]
****
a*sa
dd*b
***z
*/