unittest
{
	assert( [ "15 10",
		"snake snake snake snake snake snake snake snake snake snake",
		"snake snake snake snake snake snake snake snake snake snake",
		"snake snake snake snake snake snake snake snake snake snake",
		"snake snake snake snake snake snake snake snake snake snake",
		"snake snake snake snake snake snake snake snake snake snake",
		"snake snake snake snake snake snake snake snuke snake snake",
		"snake snake snake snake snake snake snake snake snake snake",
		"snake snake snake snake snake snake snake snake snake snake",
		"snake snake snake snake snake snake snake snake snake snake",
		"snake snake snake snake snake snake snake snake snake snake",
		"snake snake snake snake snake snake snake snake snake snake",
		"snake snake snake snake snake snake snake snake snake snake",
		"snake snake snake snake snake snake snake snake snake snake",
		"snake snake snake snake snake snake snake snake snake snake",
		"snake snake snake snake snake snake snake snake snake snake" ].parse.expand.solve == "H6" );
	assert( [ "1 1", "snuke" ].parse.expand.solve == "A1" );
}



import std.conv;
import std.range;
import std.stdio;
import std.typecons;

void main()
{
	stdin.byLineCopy.parse.expand.solve.writeln;
}

auto parse( Range )( Range input )
if( isInputRange!Range && is( ElementType!Range == string ) )
{
	auto hw = input.front.split.to!( long[] );
	auto sss = new dstring[][]( hw[ 0 ], hw[ 1 ] );
	foreach( ref ss; sss )
	{
		input.popFront;
		ss = input.front.split.to!( dstring[] );
	}
	return tuple( sss );
}

auto solve( dstring[][] sss )
{
	foreach( r, ss; sss )
	{
		foreach( c, s; ss )
		{
			if( s == "snuke" ) return cast( dchar )( 'A' + c ) ~ ( r + 1 ).to!dstring;
		}
	}
	assert( false );
}
