#include"stdio.h"
int main()
{
int k,i;
scanf("%d",&k);
int a[100];
for(int i=0;i<=k-1;i++) {
scanf("%d",&a[i]);
}
do {
i=0;
switch(a[i]) {
case 0:
printf("XXX\nX.X\nX.X\nX.X\nXXX");
if(i!=k-1) {
printf(".\n.\n.\n.\n.\n");
}
case 1:
printf("..X\n..X\n..X\n..X\n..X");
if(i!=k-1) {
printf(".\n.\n.\n.\n.\n");
}case 2:
printf("XXX\n..X\nXXX\nX..\nXXX");
if(i!=k-1) {
printf(".\n.\n.\n.\n.\n");
}case 3:
printf("XXX\n..X\nXXX\n..X\nXXX");
if(i!=k-1) {
printf(".\n.\n.\n.\n.\n");
}case 4:
printf("X.X\nX.X\nXXX\n..X\n..X");
if(i!=k-1) {
printf(".\n.\n.\n.\n.\n");
}case 5:
printf("XXX\nX..\nXXX\n..X\nXXX");
if(i!=k-1) {
printf(".\n.\n.\n.\n.\n");
}case 6:
printf("XXX\nX..\nXXX\nX.X\nXXX");
if(i!=k-1) {
printf(".\n.\n.\n.\n.\n");
}case 7:
printf("XXX\n..X\n..X\n..X\n..X");
if(i!=k-1) {
printf(".\n.\n.\n.\n.\n");
}case 8:
printf("XXX\nX.X\nXXX\nX.X\nXXX");
if(i!=k-1) {
printf(".\n.\n.\n.\n.\n");
}case 9:
printf("XXX\nX.X\nXXX\n..X\nXXX");
if(i!=k-1) {
printf(".\n.\n.\n.\n.\n");
}
default:continue;
}
i++;
} while(i<=k+1);
return 0;
}