#include <stdio.h>
#include <string.h>
int main()
{
int n;
scanf("%d", &n);
getchar();
int i, j;
char str[105];
fgets(str, n + 1, stdin);
for(i = 0;i < 5;i++){
if(i == 0){
for(j = 0;j < n;j++){
switch(str[j]){
case '1':
printf("..X");
break;
case '4':
printf("X.X");
break;
default:
printf("XXX");
}
if(j != (n - 1) ){
printf(".");
}
}
printf("\n");
}else if(i == 1){
for(j = 0;j < n;j++){
switch(str[j]){
case '1':
case '2':
case '3':
case '7':
printf("..X");
break;
case '5':
case '6':
printf("X..");
break;
default:
printf("X.X");
}
if(j != (n - 1) ){
printf(".");
}
}
printf("\n");
}else if(i == 2){
for(j = 0;j < n;j++){
switch(str[j]){
case '0':
printf("X.X");
break;
case '1':
case '7':
printf("..X");
break;
default:
printf("XXX");
}
if(j != (n - 1) ){
printf(".");
}
}
printf("\n");
}else if(i == 3){
for(j = 0;j < n;j++){
switch(str[j]){
case '0':
case '6':
case '8':
printf("X.X");
break;
case '2':
printf("X..");
break;
default:
printf("..X");
}
if(j != (n - 1) ){
printf(".");
}
}
printf("\n");
}else{
for(j = 0;j < n;j++){
switch(str[j]){
case '1':
case '4':
case '7':
printf("..X");
break;
default:
printf("XXX");
}
if(j != (n - 1) ){
printf(".");
}
}
}
}
return 0;
}