#include<bits/stdc++.h>
#define MAX 300000000
using namespace std;
int s,cnt,u[20],M[20][20];
void dfs(int sum)
{
cnt++;
if(cnt>MAX) puts("No solution"),exit(0);
if(sum==55)
{
for(int i=1;i<=10;i++)
{
for(int j=1;j<=i;j++) putchar(M[i][j]+64);
putchar('\n');
}
exit(0);
}
for(int x=1;x<=10;x++)
{
for(int y=1;y<=x;y++)
{
if(M[x][y]!=-1) continue;
if(M[x+1][y]==-1&&M[x][y+1]==-1&&u[1])
{
M[x][y]=M[x+1][y]=M[x][y+1]=1;
u[1]=0;
dfs(sum+3);
u[1]=1;
M[x][y]=M[x+1][y]=M[x][y+1]=-1;
}//1
if(M[x-1][y]==-1&&M[x][y+1]==-1&&u[1])
{
M[x][y]=M[x-1][y]=M[x][y+1]=1;
u[1]=0;
dfs(sum+3);
u[1]=1;
M[x][y]=M[x-1][y]=M[x][y+1]=-1;
}//2
if(M[x+1][y]==-1&&M[x][y-1]==-1&&u[1])
{
M[x][y]=M[x+1][y]=M[x][y-1]=1;
u[1]=0;
dfs(sum+3);
u[1]=1;
M[x][y]=M[x+1][y]=M[x][y-1]=-1;
}//3
if(M[x-1][y]==-1&&M[x][y-1]==-1&&u[1])
{
M[x][y]=M[x-1][y]=M[x][y-1]=1;
u[1]=0;
dfs(sum+3);
u[1]=1;
M[x][y]=M[x-1][y]=M[x][y-1]=-1;
}//4
if(M[x+1][y]==-1&&M[x+2][y]==-1&&M[x+3][y]==-1&&u[2])
{
M[x][y]=M[x+1][y]=M[x+2][y]=M[x+3][y]=2;
u[2]=0;
dfs(sum+4);
u[2]=1;
M[x][y]=M[x+1][y]=M[x+2][y]=M[x+3][y]=-1;
}//5
if(M[x][y+1]==-1&&M[x][y+2]==-1&&M[x][y+3]==-1&&u[2])
{
M[x][y]=M[x][y+1]=M[x][y+2]=M[x][y+3]=2;
u[2]=0;
dfs(sum+4);
u[2]=1;
M[x][y]=M[x][y+1]=M[x][y+2]=M[x][y+3]=-1;
}//6
if(M[x+1][y]==-1&&M[x][y+1]==-1&&M[x][y+2]==-1&&u[3])
{
M[x][y]=M[x+1][y]=M[x][y+1]=M[x][y+2]=3;
u[3]=0;
dfs(sum+4);
u[3]=1;
M[x][y]=M[x+1][y]=M[x][y+1]=M[x][y+2]=-1;
}//7
if(M[x-1][y]==-1&&M[x][y+1]==-1&&M[x][y+2]==-1&&u[3])
{
M[x][y]=M[x-1][y]=M[x][y+1]=M[x][y+2]=3;
u[3]=0;
dfs(sum+4);
u[3]=1;
M[x][y]=M[x-1][y]=M[x][y+1]=M[x][y+2]=-1;
}//8
if(M[x+1][y]==-1&&M[x][y-1]==-1&&M[x][y-2]==-1&&u[3])
{
M[x][y]=M[x+1][y]=M[x][y-1]=M[x][y-2]=3;
u[3]=0;
dfs(sum+4);
u[3]=1;
M[x][y]=M[x+1][y]=M[x][y-1]=M[x][y-2]=-1;
}//9
if(M[x-1][y]==-1&&M[x][y-1]==-1&&M[x][y-2]==-1&&u[3])
{
M[x][y]=M[x-1][y]=M[x][y-1]=M[x][y-2]=3;
u[3]=0;
dfs(sum+4);
u[3]=1;
M[x][y]=M[x-1][y]=M[x][y-1]=M[x][y-2]=-1;
}//10
if(M[x+1][y]==-1&&M[x+2][y]==-1&&M[x][y+1]==-1&&u[3])
{
M[x][y]=M[x+1][y]=M[x+2][y]=M[x][y+1]=3;
u[3]=0;
dfs(sum+4);
u[3]=1;
M[x][y]=M[x+1][y]=M[x+2][y]=M[x][y+1]=-1;
}//11
if(M[x-1][y]==-1&&M[x-2][y]==-1&&M[x][y+1]==-1&&u[3])
{
M[x][y]=M[x-1][y]=M[x-2][y]=M[x][y+1]=3;
u[3]=0;
dfs(sum+4);
u[3]=1;
M[x][y]=M[x-1][y]=M[x-2][y]=M[x][y+1]=-1;
}//12
if(M[x-1][y]==-1&&M[x-2][y]==-1&&M[x][y-1]==-1&&u[3])
{
M[x][y]=M[x-1][y]=M[x-2][y]=M[x][y-1]=3;
u[3]=0;
dfs(sum+4);
u[3]=1;
M[x][y]=M[x-1][y]=M[x-2][y]=M[x][y-1]=-1;
}//13
if(M[x+1][y]==-1&&M[x+2][y]==-1&&M[x][y-1]==-1&&u[3])
{
M[x][y]=M[x+1][y]=M[x+2][y]=M[x][y-1]=3;
u[3]=0;
dfs(sum+4);
u[3]=1;
M[x][y]=M[x+1][y]=M[x+2][y]=M[x][y-1]=-1;
}//14
if(M[x+1][y]==-1&&M[x][y+1]==-1&&M[x+1][y+1]==-1&&u[4])
{
M[x][y]=M[x+1][y]=M[x][y+1]=M[x+1][y+1]=4;
u[4]=0;
dfs(sum+4);
u[4]=1;
M[x][y]=M[x+1][y]=M[x][y+1]=M[x+1][y+1]=-1;
}//15
if(M[x+1][y]==-1&&M[x+2][y]==-1&&M[x][y+1]==-1&&M[x][y+2]==-1&&u[5])
{
M[x][y]=M[x+1][y]=M[x+2][y]=M[x][y+1]=M[x][y+2]=5;
u[5]=0;
dfs(sum+5);
u[5]=1;
M[x][y]=M[x+1][y]=M[x+2][y]=M[x][y+1]=M[x][y+2]=-1;
}//16
if(M[x-1][y]==-1&&M[x-2][y]==-1&&M[x][y+1]==-1&&M[x][y+2]==-1&&u[5])
{
M[x][y]=M[x-1][y]=M[x-2][y]=M[x][y+1]=M[x][y+2]=5;
u[5]=0;
dfs(sum+5);
u[5]=1;
M[x][y]=M[x-1][y]=M[x-2][y]=M[x][y+1]=M[x][y+2]=-1;
}//17
if(M[x+1][y]==-1&&M[x+2][y]==-1&&M[x][y-1]==-1&&M[x][y-2]==-1&&u[5])
{
M[x][y]=M[x+1][y]=M[x+2][y]=M[x][y-1]=M[x][y-2]=5;
u[5]=0;
dfs(sum+5);
u[5]=1;
M[x][y]=M[x+1][y]=M[x+2][y]=M[x][y-1]=M[x][y-2]=-1;
}//18
if(M[x-1][y]==-1&&M[x-2][y]==-1&&M[x][y-1]==-1&&M[x][y-2]==-1&&u[5])
{
M[x][y]=M[x-1][y]=M[x-2][y]=M[x][y-1]=M[x][y-2]=5;
u[5]=0;
dfs(sum+5);
u[5]=1;
M[x][y]=M[x-1][y]=M[x-2][y]=M[x][y-1]=M[x][y-2]=-1;
}//19
if(M[x][y+1]==-1&&M[x+1][y+1]==-1&&M[x][y+2]==-1&&M[x][y+3]==-1&&u[6])
{
M[x][y]=M[x][y+1]=M[x+1][y+1]=M[x][y+2]=M[x][y+3]=6;
u[6]=0;
dfs(sum+5);
u[6]=1;
M[x][y]=M[x][y+1]=M[x+1][y+1]=M[x][y+2]=M[x][y+3]=-1;
}//20
if(M[x][y+1]==-1&&M[x-1][y+1]==-1&&M[x][y+2]==-1&&M[x][y+3]==-1&&u[6])
{
M[x][y]=M[x][y+1]=M[x-1][y+1]=M[x][y+2]=M[x][y+3]=6;
u[6]=0;
dfs(sum+5);
u[6]=1;
M[x][y]=M[x][y+1]=M[x-1][y+1]=M[x][y+2]=M[x][y+3]=-1;
}//21
if(M[x][y-1]==-1&&M[x+1][y-1]==-1&&M[x][y-2]==-1&&M[x][y-3]==-1&&u[6])
{
M[x][y]=M[x][y-1]=M[x+1][y-1]=M[x][y-2]=M[x][y-3]=6;
u[6]=0;
dfs(sum+5);
u[6]=1;
M[x][y]=M[x][y-1]=M[x+1][y-1]=M[x][y-2]=M[x][y-3]=-1;
}//22
if(M[x][y-1]==-1&&M[x-1][y-1]==-1&&M[x][y-2]==-1&&M[x][y-3]==-1&&u[6])
{
M[x][y]=M[x][y-1]=M[x-1][y-1]=M[x][y-2]=M[x][y-3]=6;
u[6]=0;
dfs(sum+5);
u[6]=1;
M[x][y]=M[x][y-1]=M[x-1][y-1]=M[x][y-2]=M[x][y-3]=-1;
}//23
if(M[x+1][y]==-1&&M[x+1][y+1]==-1&&M[x+2][y]==-1&&M[x+3][y]==-1&&u[6])
{
M[x][y]=M[x+1][y]=M[x+1][y+1]=M[x+2][y]=M[x+3][y]=6;
u[6]=0;
dfs(sum+5);
u[6]=1;
M[x][y]=M[x+1][y]=M[x+1][y+1]=M[x+2][y]=M[x+3][y]=-1;
}//24
if(M[x+1][y]==-1&&M[x+1][y-1]==-1&&M[x+2][y]==-1&&M[x+3][y]==-1&&u[6])
{
M[x][y]=M[x+1][y]=M[x+1][y-1]=M[x+2][y]=M[x+3][y]=6;
u[6]=0;
dfs(sum+5);
u[6]=1;
M[x][y]=M[x+1][y]=M[x+1][y-1]=M[x+2][y]=M[x+3][y]=-1;
}//25
if(M[x-1][y]==-1&&M[x-1][y+1]==-1&&M[x-2][y]==-1&&M[x-3][y]==-1&&u[6])
{
M[x][y]=M[x-1][y]=M[x-1][y+1]=M[x-2][y]=M[x-3][y]=6;
u[6]=0;
dfs(sum+5);
u[6]=1;
M[x][y]=M[x-1][y]=M[x-1][y+1]=M[x-2][y]=M[x-3][y]=-1;
}//26
if(M[x-1][y]==-1&&M[x-1][y-1]==-1&&M[x-2][y]==-1&&M[x-3][y]==-1&&u[6])
{
M[x][y]=M[x-1][y]=M[x-1][y-1]=M[x-2][y]=M[x-3][y]=6;
u[6]=0;
dfs(sum+5);
u[6]=1;
M[x][y]=M[x-1][y]=M[x-1][y-1]=M[x-2][y]=M[x-3][y]=-1;
}//27
if(M[x+1][y]==-1&&M[x][y+1]==-1&&M[x][y+2]==-1&&M[x+1][y+2]==-1&&u[7])
{
M[x][y]=M[x+1][y]=M[x][y+1]=M[x][y+2]=M[x+1][y+2]=7;
u[7]=0;
dfs(sum+5);
u[7]=1;
M[x][y]=M[x+1][y]=M[x][y+1]=M[x][y+2]=M[x+1][y+2]=-1;
}//28
if(M[x-1][y]==-1&&M[x][y+1]==-1&&M[x][y+2]==-1&&M[x-1][y+2]==-1&&u[7])
{
M[x][y]=M[x-1][y]=M[x][y+1]=M[x][y+2]=M[x-1][y+2]=7;
u[7]=0;
dfs(sum+5);
u[7]=1;
M[x][y]=M[x-1][y]=M[x][y+1]=M[x][y+2]=M[x-1][y+2]=-1;
}//29
if(M[x+1][y]==-1&&M[x][y-1]==-1&&M[x][y-2]==-1&&M[x+1][y-2]==-1&&u[7])
{
M[x][y]=M[x+1][y]=M[x][y-1]=M[x][y-2]=M[x+1][y-2]=7;
u[7]=0;
dfs(sum+5);
u[7]=1;
M[x][y]=M[x+1][y]=M[x][y-1]=M[x][y-2]=M[x+1][y-2]=-1;
}//30
if(M[x-1][y]==-1&&M[x][y-1]==-1&&M[x][y-2]==-1&&M[x-1][y-2]==-1&&u[7])
{
M[x][y]=M[x-1][y]=M[x][y-1]=M[x][y-2]=M[x-1][y-2]=7;
u[7]=0;
dfs(sum+5);
u[7]=1;
M[x][y]=M[x-1][y]=M[x][y-1]=M[x][y-2]=M[x-1][y-2]=-1;
}//31
if(M[x+1][y]==-1&&M[x][y+1]==-1&&M[x][y+2]==-1&&M[x+1][y+1]==-1&&u[8])
{
M[x][y]=M[x+1][y]=M[x][y+1]=M[x][y+2]=M[x+1][y+1]=8;
u[8]=0;
dfs(sum+5);
u[8]=1;
M[x][y]=M[x+1][y]=M[x][y+1]=M[x][y+2]=M[x+1][y+1]=-1;
}//32
if(M[x-1][y]==-1&&M[x][y+1]==-1&&M[x][y+2]==-1&&M[x-1][y+1]==-1&&u[8])
{
M[x][y]=M[x-1][y]=M[x][y+1]=M[x][y+2]=M[x-1][y+1]=8;
u[8]=0;
dfs(sum+5);
u[8]=1;
M[x][y]=M[x-1][y]=M[x][y+1]=M[x][y+2]=M[x-1][y+1]=-1;
}//33
if(M[x+1][y]==-1&&M[x][y-1]==-1&&M[x][y-2]==-1&&M[x+1][y-1]==-1&&u[8])
{
M[x][y]=M[x+1][y]=M[x][y-1]=M[x][y-2]=M[x+1][y-1]=8;
u[8]=0;
dfs(sum+5);
u[8]=1;
M[x][y]=M[x+1][y]=M[x][y-1]=M[x][y-2]=M[x+1][y-1]=-1;
}//34
if(M[x-1][y]==-1&&M[x][y-1]==-1&&M[x][y-2]==-1&&M[x-1][y-1]==-1&&u[8])
{
M[x][y]=M[x-1][y]=M[x][y-1]=M[x][y-2]=M[x-1][y-1]=8;
u[8]=0;
dfs(sum+5);
u[8]=1;
M[x][y]=M[x-1][y]=M[x][y-1]=M[x][y-2]=M[x-1][y-1]=-1;
}//35
if(M[x][y+1]==-1&&M[x+1][y]==-1&&M[x+2][y]==-1&&M[x+1][y+1]==-1&&u[8])
{
M[x][y]=M[x][y+1]=M[x+1][y]=M[x+2][y]=M[x+1][y+1]=8;
u[8]=0;
dfs(sum+5);
u[8]=1;
M[x][y]=M[x][y+1]=M[x+1][y]=M[x+2][y]=M[x+1][y+1]=-1;
}//36
if(M[x][y-1]==-1&&M[x+1][y]==-1&&M[x+2][y]==-1&&M[x+1][y-1]==-1&&u[8])
{
M[x][y]=M[x][y-1]=M[x+1][y]=M[x+2][y]=M[x+1][y-1]=8;
u[8]=0;
dfs(sum+5);
u[8]=1;
M[x][y]=M[x][y-1]=M[x+1][y]=M[x+2][y]=M[x+1][y-1]=-1;
}//37
if(M[x][y+1]==-1&&M[x-1][y]==-1&&M[x-2][y]==-1&&M[x-1][y+1]==-1&&u[8])
{
M[x][y]=M[x][y+1]=M[x-1][y]=M[x-2][y]=M[x-1][y+1]=8;
u[8]=0;
dfs(sum+5);
u[8]=1;
M[x][y]=M[x][y+1]=M[x-1][y]=M[x-2][y]=M[x-1][y+1]=-1;
}//38
if(M[x][y-1]==-1&&M[x-1][y]==-1&&M[x-2][y]==-1&&M[x-1][y-1]==-1&&u[8])
{
M[x][y]=M[x][y-1]=M[x-1][y]=M[x-2][y]=M[x-1][y-1]=8;
u[8]=0;
dfs(sum+5);
u[8]=1;
M[x][y]=M[x][y-1]=M[x-1][y]=M[x-2][y]=M[x-1][y-1]=-1;
}//39
if(M[x][y+1]==-1&&M[x][y+2]==-1&&M[x+1][y+2]==-1&&M[x+1][y+3]==-1&&u[9])
{
M[x][y]=M[x][y+1]=M[x][y+2]=M[x+1][y+2]=M[x+1][y+3]=9;
u[9]=0;
dfs(sum+5);
u[9]=1;
M[x][y]=M[x][y+1]=M[x][y+2]=M[x+1][y+2]=M[x+1][y+3]=-1;
}//40
if(M[x][y-1]==-1&&M[x][y-2]==-1&&M[x+1][y-2]==-1&&M[x+1][y-3]==-1&&u[9])
{
M[x][y]=M[x][y-1]=M[x][y-2]=M[x+1][y-2]=M[x+1][y-3]=9;
u[9]=0;
dfs(sum+5);
u[9]=1;
M[x][y]=M[x][y-1]=M[x][y-2]=M[x+1][y-2]=M[x+1][y-3]=-1;
}//41
if(M[x][y+1]==-1&&M[x][y+2]==-1&&M[x-1][y+2]==-1&&M[x-1][y+3]==-1&&u[9])
{
M[x][y]=M[x][y+1]=M[x][y+2]=M[x-1][y+2]=M[x-1][y+3]=9;
u[9]=0;
dfs(sum+5);
u[9]=1;
M[x][y]=M[x][y+1]=M[x][y+2]=M[x-1][y+2]=M[x-1][y+3]=-1;
}//42
if(M[x][y-1]==-1&&M[x][y-2]==-1&&M[x-1][y-2]==-1&&M[x-1][y-3]==-1&&u[9])
{
M[x][y]=M[x][y-1]=M[x][y-2]=M[x-1][y-2]=M[x-1][y-3]=9;
u[9]=0;
dfs(sum+5);
u[9]=1;
M[x][y]=M[x][y-1]=M[x][y-2]=M[x-1][y-2]=M[x-1][y-3]=-1;
}//43
if(M[x+1][y]==-1&&M[x+2][y]==-1&&M[x+2][y+1]==-1&&M[x+3][y+1]==-1&&u[9])
{
M[x][y]=M[x+1][y]=M[x+2][y]=M[x+2][y+1]=M[x+3][y+1]=9;
u[9]=0;
dfs(sum+5);
u[9]=1;
M[x][y]=M[x+1][y]=M[x+2][y]=M[x+2][y+1]=M[x+3][y+1]=-1;
}//44
if(M[x-1][y]==-1&&M[x-2][y]==-1&&M[x-2][y+1]==-1&&M[x-3][y+1]==-1&&u[9])
{
M[x][y]=M[x-1][y]=M[x-2][y]=M[x-2][y+1]=M[x-3][y+1]=9;
u[9]=0;
dfs(sum+5);
u[9]=1;
M[x][y]=M[x-1][y]=M[x-2][y]=M[x-2][y+1]=M[x-3][y+1]=-1;
}//45
if(M[x+1][y]==-1&&M[x+2][y]==-1&&M[x+2][y-1]==-1&&M[x+3][y-1]==-1&&u[9])
{
M[x][y]=M[x+1][y]=M[x+2][y]=M[x+2][y-1]=M[x+3][y-1]=9;
u[9]=0;
dfs(sum+5);
u[9]=1;
M[x][y]=M[x+1][y]=M[x+2][y]=M[x+2][y-1]=M[x+3][y-1]=-1;
}//46
if(M[x-1][y]==-1&&M[x-2][y]==-1&&M[x-2][y-1]==-1&&M[x-3][y-1]==-1&&u[9])
{
M[x][y]=M[x-1][y]=M[x-2][y]=M[x-2][y-1]=M[x-3][y-1]=9;
u[9]=0;
dfs(sum+5);
u[9]=1;
M[x][y]=M[x-1][y]=M[x-2][y]=M[x-2][y-1]=M[x-3][y-1]=-1;
}//47
if(M[x-1][y]==-1&&M[x][y-1]==-1&&M[x+1][y]==-1&&M[x][y+1]==-1&&u[10])
{
M[x][y]=M[x-1][y]=M[x][y-1]=M[x+1][y]=M[x][y+1]=10;
u[10]=0;
dfs(sum+5);
u[10]=1;
M[x][y]=M[x-1][y]=M[x][y-1]=M[x+1][y]=M[x][y+1]=-1;
}//48
if(M[x+1][y]==-1&&M[x+1][y+1]==-1&&M[x+2][y+1]==-1&&M[x+2][y+2]==-1&&u[11])
{
M[x][y]=M[x+1][y]=M[x+1][y+1]=M[x+2][y+1]=M[x+2][y+2]=11;
u[11]=0;
dfs(sum+5);
u[11]=1;
M[x][y]=M[x+1][y]=M[x+1][y+1]=M[x+2][y+1]=M[x+2][y+2]=-1;
}//49
if(M[x-1][y]==-1&&M[x-1][y+1]==-1&&M[x-2][y+1]==-1&&M[x-2][y+2]==-1&&u[11])
{
M[x][y]=M[x-1][y]=M[x-1][y+1]=M[x-2][y+1]=M[x-2][y+2]=11;
u[11]=0;
dfs(sum+5);
u[11]=1;
M[x][y]=M[x-1][y]=M[x-1][y+1]=M[x-2][y+1]=M[x-2][y+2]=-1;
}//50
if(M[x+1][y]==-1&&M[x+1][y-1]==-1&&M[x+2][y-1]==-1&&M[x+2][y-2]==-1&&u[11])
{
M[x][y]=M[x+1][y]=M[x+1][y-1]=M[x+2][y-1]=M[x+2][y-2]=11;
u[11]=0;
dfs(sum+5);
u[11]=1;
M[x][y]=M[x+1][y]=M[x+1][y-1]=M[x+2][y-1]=M[x+2][y-2]=-1;
}//51
if(M[x-1][y]==-1&&M[x-1][y-1]==-1&&M[x-2][y-1]==-1&&M[x-2][y-2]==-1&&u[11])
{
M[x][y]=M[x-1][y]=M[x-1][y-1]=M[x-2][y-1]=M[x-2][y-2]=11;
u[11]=0;
dfs(sum+5);
u[11]=1;
M[x][y]=M[x-1][y]=M[x-1][y-1]=M[x-2][y-1]=M[x-2][y-2]=-1;
}//52
if(M[x][y+1]==-1&&M[x+1][y+1]==-1&&M[x+1][y+2]==-1&&M[x+2][y+2]==-1&&u[11])
{
M[x][y]=M[x][y+1]=M[x+1][y+1]=M[x+1][y+2]=M[x+2][y+2]=11;
u[11]=0;
dfs(sum+5);
u[11]=1;
M[x][y]=M[x][y+1]=M[x+1][y+1]=M[x+1][y+2]=M[x+2][y+2]=-1;
}//53
if(M[x][y-1]==-1&&M[x+1][y-1]==-1&&M[x+1][y-2]==-1&&M[x+2][y-2]==-1&&u[11])
{
M[x][y]=M[x][y-1]=M[x+1][y-1]=M[x+1][y-2]=M[x+2][y-2]=11;
u[11]=0;
dfs(sum+5);
u[11]=1;
M[x][y]=M[x][y-1]=M[x+1][y-1]=M[x+1][y-2]=M[x+2][y-2]=-1;
}//54
if(M[x][y+1]==-1&&M[x-1][y+1]==-1&&M[x-1][y+2]==-1&&M[x-2][y+2]==-1&&u[11])
{
M[x][y]=M[x][y+1]=M[x-1][y+1]=M[x-1][y+2]=M[x-2][y+2]=11;
u[11]=0;
dfs(sum+5);
u[11]=1;
M[x][y]=M[x][y+1]=M[x-1][y+1]=M[x-1][y+2]=M[x-2][y+2]=-1;
}//55
if(M[x][y-1]==-1&&M[x-1][y-1]==-1&&M[x-1][y-2]==-1&&M[x-2][y-2]==-1&&u[11])
{
M[x][y]=M[x][y-1]=M[x-1][y-1]=M[x-1][y-2]=M[x-2][y-2]=11;
u[11]=0;
dfs(sum+5);
u[11]=1;
M[x][y]=M[x][y-1]=M[x-1][y-1]=M[x-1][y-2]=M[x-2][y-2]=-1;
}//56
if(M[x+1][y]==-1&&M[x][y+1]==-1&&M[x][y+2]==-1&&M[x][y+3]==-1&&u[12])
{
M[x][y]=M[x+1][y]=M[x][y+1]=M[x][y+2]=M[x][y+3]=12;
u[12]=0;
dfs(sum+5);
u[12]=1;
M[x][y]=M[x+1][y]=M[x][y+1]=M[x][y+2]=M[x][y+3]=-1;
}//57
if(M[x-1][y]==-1&&M[x][y+1]==-1&&M[x][y+2]==-1&&M[x][y+3]==-1&&u[12])
{
M[x][y]=M[x-1][y]=M[x][y+1]=M[x][y+2]=M[x][y+3]=12;
u[12]=0;
dfs(sum+5);
u[12]=1;
M[x][y]=M[x-1][y]=M[x][y+1]=M[x][y+2]=M[x][y+3]=-1;
}//58
if(M[x][y+1]==-1&&M[x+1][y]==-1&&M[x+2][y]==-1&&M[x+3][y]==-1&&u[12])
{
M[x][y]=M[x][y+1]=M[x+1][y]=M[x+2][y]=M[x+3][y]=12;
u[12]=0;
dfs(sum+5);
u[12]=1;
M[x][y]=M[x][y+1]=M[x+1][y]=M[x+2][y]=M[x+3][y]=-1;
}//59
if(M[x][y-1]==-1&&M[x+1][y]==-1&&M[x+2][y]==-1&&M[x+3][y]==-1&&u[12])
{
M[x][y]=M[x][y-1]=M[x+1][y]=M[x+2][y]=M[x+3][y]=12;
u[12]=0;
dfs(sum+5);
u[12]=1;
M[x][y]=M[x][y-1]=M[x+1][y]=M[x+2][y]=M[x+3][y]=-1;
}//60
}
}
}
int main()
{
u[1]=u[2]=u[3]=u[4]=u[5]=u[6]=u[7]=u[8]=u[9]=u[10]=u[11]=u[12]=1;
for(int i=1;i<=10;i++)
{
for(int j=1;j<=i;j++)
{
char ch; cin>>ch;
if(ch!='.') s++,u[ch-64]=0;
M[i][j]=(ch=='.'?-1:ch-64);
}
}
dfs(s);
return 0;
}