#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 length = strlen(array);
for (int j = 0; j < length; ++j) {
mt[counter][j] = array[j];
}
++counter;
lengthFin = length;
}
int linie = lengthFin - 1;
for (int i = 0; i < lengthFin; ++i, --linie) {
for (int j = 0; j < lengthFin; ++j) {
if ((mt[j][i] >= 'a' && mt[j][i] <= 'z') || (mt[j][i] >= 'A' && mt[j][i] <= 'Z')) {
secMt[linie][j] = mt[j][i];
}
}
}
for (int i = 0 ; i < lengthFin; ++i) {
for (int j = 0 ; j < lengthFin; ++j) {
cout << secMt[i][j];
}
cout <<"\n";
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0cmluZz4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmNvbnN0IGludCBNQVhfTEVOR1RIID0gMTAwOwoKaW50IG1haW4oKSB7CgljaGFyIGFycmF5W01BWF9MRU5HVEggKyAxXSwgbXRbTUFYX0xFTkdUSCArIDFdW01BWF9MRU5HVEggKyAxXSwgc2VjTXRbTUFYX0xFTkdUSCArIDFdW01BWF9MRU5HVEggKyAxXTsKCWludCBjb3VudGVyID0gMCwgbGVuZ3RoRmluID0gMDsKCXdoaWxlIChjaW4uZ2V0bGluZShhcnJheSwgTUFYX0xFTkdUSCkpIHsKCQlpbnQgbGVuZ3RoID0gc3RybGVuKGFycmF5KTsKCQkJZm9yIChpbnQgaiA9IDA7IGogPCBsZW5ndGg7ICsraikgewoJCQkJbXRbY291bnRlcl1bal0gPSBhcnJheVtqXTsKCQkJfQoJCSsrY291bnRlcjsgCgkJbGVuZ3RoRmluID0gbGVuZ3RoOwoJfQoJaW50IGxpbmllID0gbGVuZ3RoRmluIC0gMTsKCWZvciAoaW50IGkgPSAwOyBpIDwgbGVuZ3RoRmluOyArK2ksIC0tbGluaWUpIHsKCQlmb3IgKGludCBqID0gMDsgaiA8IGxlbmd0aEZpbjsgKytqKSB7CgkJCWlmICgobXRbal1baV0gPj0gJ2EnICYmIG10W2pdW2ldIDw9ICd6JykgfHwgKG10W2pdW2ldID49ICdBJyAmJiBtdFtqXVtpXSA8PSAnWicpKSB7CgkJCQlzZWNNdFtsaW5pZV1bal0gPSBtdFtqXVtpXTsKCQkJfQoJCX0KCX0KCWZvciAoaW50IGkgPSAwIDsgaSA8IGxlbmd0aEZpbjsgKytpKSB7CgkJZm9yIChpbnQgaiA9IDAgOyBqIDwgbGVuZ3RoRmluOyArK2opIHsKCQkJY291dCA8PCBzZWNNdFtpXVtqXTsKCQl9CgkJY291dCA8PCJcbiI7Cgl9CglyZXR1cm4gMDsKfQ==