#include <cstdio>
#include <bitset>
#include <algorithm>

using namespace std;
int TYPE,N,M,nrt;
char c[405][405];
int dx[5]={0, 0,1,-1},
    dy[5]={1,-1,0, 0};
int used[405][405];

int quant[405*405+100];
int care[405][405];

int cnt;

void Fill(int x,int y,int k)
{
    used[x][y] = k;
    cnt++;
    int _x,_y;
    for(int i = 0; i <= 3; ++i)
    {
        _x = x + dx[i];
        _y = y + dy[i];
        if(used[_x][_y] != k && c[x][y] == c[_x][_y])
            Fill(_x,_y,k);
    }
}

void Read()
{
    scanf("%d",&TYPE);
    scanf("%d%d",&N,&M);
    for(int i = 0; i <= M + 1; ++i)
        c[0][i] = c[N+1][i] = '#';
    for(int i = 1; i <= N; ++i)
    {
        scanf("%s",c[i]+1);
        c[i][0] = '#';
        c[i][M+1] = '#';
    }
}
int maxi = 0;

void solve1()
{

    for(int i = 1; i <= N; ++i)
        for(int j = 1; j <= M; ++j)
            if(used[i][j] != 1)
            {
                cnt = 0;
                ++nrt;
                Fill(i,j,nrt);
                quant[nrt] = cnt;
                if(cnt > maxi)
                    maxi = cnt;
            }
}
int usd[405*405+100];

void solve2()
{
    int _i,_j,crt,bestus = 0;
    int besti,bestj,nn = 0;
    char bestc;

    for(int i = 1; i <= N; ++i)
        for(int j = 1; j <= M; ++j)
        {
            char vechi = c[i][j];
            for(char nou = 'a'; nou <= 'z'; ++nou)
            {
                ++nn;
                crt = 1;
                c[i][j] = nou;

                for(int ii = 0; ii <= 3; ++ii)
                {
                    _i = i + dx[ii];
                    _j = j + dy[ii];
                    if(c[i][j] == c[_i][_j] && usd[used[_i][_j]] != nn)
                    {
                        usd[used[_i][_j]] = nn;
                        crt += quant[used[_i][_j]];
                        if(vechi == c[_i][_j]) /// era tot din asta
                            --crt; /// il scoatem pe ala gata numarat
                    }
                }
                if(bestus < crt)
                {
                    bestus = crt;
                    bestc = c[i][j];
                    besti = i;
                    bestj = j;
                }
            }
            c[i][j] = vechi;
        }
    printf("%d %d\n%c\n",besti,bestj,bestc);
}

int main()
{
    ///freopen("pharm.in","r",stdin);

    Read();
    solve1();
    if(TYPE == 1)
    {
        printf("%d\n",maxi);
        return 0;
    }
    solve2();

    return 0;
}