#include <fstream>
#include <string>
#include <iostream>
#include <vector>
using namespace std;

int main()
{
	ifstream fin("DATA5.txt");
	ofstream fout("OUT5.txt");
	int n,x,y,z,X,Y,Z;
	string m[5][5];
	long tmp[5][5][5];
	for(int rt=0;rt<5;rt++)
	{
		fin>>n;
		for(int i=0;i<n;i++)
			for(int j=0;j<n;j++)
				fin>>m[i][j];
		for(int i=0;i<n;i++)
			for(int j=0;j<n;j++)
				for(int k=0;k<n;k++)
					if (m[i][j][k]=='A'){x=i;y=j;z=k;}
					else if (m[i][j][k]=='B'){X=i;Y=j;Z=k;}
		
		vector<int> qx,qy,qz;
		qx.push_back(x);
		qy.push_back(y);
		qz.push_back(z);
		for(int i=0;i<n;i++)
			for(int j=0;j<n;j++)
				for(int k=0;k<n;k++)
					tmp[i][j][k]=-1;
		tmp[x][y][z]=0;
		while(!qx.empty())
		{
			int a,b,c;
			a=qx[qx.size()-1];
			b=qy[qy.size()-1];
			c=qz[qz.size()-1];
			qx.pop_back();
			qy.pop_back();
			qz.pop_back();
			if ((a+1<n)&&((tmp[a+1][b][c]==-1)||(tmp[a][b][c]+1<tmp[a+1][b][c])))
				if (m[a+1][b][c]!='#')
				{
					qx.push_back(a+1);
					qy.push_back(b);
					qz.push_back(c);
					tmp[a+1][b][c]=tmp[a][b][c]+1;
				}
			if ((a-1>=0)&&((tmp[a-1][b][c]==-1)||(tmp[a][b][c]+1<tmp[a-1][b][c])))
				if (m[a-1][b][c-1]!='#')
			{
				qx.push_back(a-1);
				qy.push_back(b);
				qz.push_back(c);
				tmp[a-1][b][c]=tmp[a][b][c]+1;
			}
			
			if ((c-1>=0)&&((tmp[a][b][c-1]==-1)||(tmp[a][b][c]+1<tmp[a][b][c-1])))
				if (m[a][b][c-1]!='#')
			{
				qx.push_back(a);
				qy.push_back(b);
				qz.push_back(c-1);
				tmp[a][b][c-1]=tmp[a][b][c]+1;
			}
			if ((c+1<n)&&((tmp[a][b][c+1]==-1)||(tmp[a][b][c]+1<tmp[a][b][c+1])))
				if (m[a][b][c+1]!='#')
			{
				qx.push_back(a);
				qy.push_back(b);
				qz.push_back(c+1);
				tmp[a][b][c+1]=tmp[a][b][c]+1;
			}
			if ((b-1>=0)&&((tmp[a][b-1][c]==-1)||(tmp[a][b][c]+1<tmp[a][b-1][c])))
				if (m[a][b-1][c]!='#')
			{
				qx.push_back(a);
				qy.push_back(b-1);
				qz.push_back(c);
				tmp[a][b-1][c]=tmp[a][b][c]+1;
			}
			if ((b+1<n)&&((tmp[a][b+1][c]==-1)||(tmp[a][b][c]+1<tmp[a][b+1][c])))
				if (m[a][b+1][c]!='#')
			{
				qx.push_back(a);
				qy.push_back(b+1);
				qz.push_back(c);
				tmp[a][b+1][c]=tmp[a][b][c]+1;
			}
			
		}
		fout<<tmp[X][Y][Z]<<endl;
	}
}
