#include<stdio.h>
void PrintBoard(char board[5][400], int n)
{
for (int i = 0; i < 5; i++)
{
for (int j = 0; j < n * 4-1; j++)
{
printf("%c", board[i][j]);
}
if (i < 4)
printf("\n");
}
}
int main()
{
int n;
char board[5][400];
scanf_s("%d", &n);
for (int i = 0; i < 5; i++)
for (int j = 0; j < 4 * n; j++)
board[i][j] = '.';
char dot[7][3][2] = {
{{0,0} ,{0,1} ,{0,2}},
{{0,0} ,{1,0} ,{2,0}},
{{0,2}, {1,2}, {2,2}},
{{2,0} ,{2,1}, {2,2}},
{{2,0}, {3,0} ,{4,0}},
{{2,2} ,{3,2}, {4,2}},
{{4,0}, {4,1} ,{4,2}}
};
char light[10][8] = { {6,0,1,2,4,5,6}, {2,2,5}, {5,0,2,3,4,6}, {5,0,2,3,5,6}, {4,1,3,2,5}, {5,0,1,3,5,6}, {6,0,1,3,4,5,6}, {3,0,2,5}, {7,0,1,2,3,4,5,6}, {6,0,1,2,3,5,6} };
int kong=getchar();
for (int i = 0; i < n; i++)
{
int basex = 4 * i, basey = 0;
int num = getchar() - '0';
for (int tube = 1;tube<=light[num][0] ; tube++)
{
board[basey + dot[light[num][tube]][0][0]][basex + dot[light[num][tube]][0][1]] = 'X';
board[basey + dot[light[num][tube]][1][0]][basex + dot[light[num][tube]][1][1]] = 'X';
board[basey + dot[light[num][tube]][2][0]][basex + dot[light[num][tube]][2][1]] = 'X';
}
}
PrintBoard(board, n);
return 0;
}