import sys

def occult(sliz):
  diarr = {}
  for i, s in enumerate(sliz):
    n = diarr.get(s, (0, 0))
    diarr[s] = (n[0] + 1, i)
  return diarr

def wroeng(diarr):
  return [ (s, v[1]) for s,v in diarr.items() if v[0] == 1 ][0]

def cerroct(diarr):
  return [ s for s,v in diarr.items() if v[0] != 1 ][0]


def main666():
    while sys.stdin:
        try:
            n = int(input())
            lines = []
            for i in range(n):
                lines.append(input())

            row_set = [ ''.join(sorted(line)) for line in lines]
            cols = [ [lines[x][y] for x in range(n)] for y in range(n) ]
            col_set = [ ''.join(sorted(col)) for col in cols ]

            occult_row = occult(row_set)
            occult_col = occult(col_set)
            
            wr_row_str, wr_row_index = wroeng(occult_row)
            wr_col_str, wr_col_index = wroeng(occult_col)

            cr_row_str = cerroct(occult_row)
            cr_col_str = cerroct(occult_col)

            goude_char = list(set(cr_row_str) - set(wr_row_str))[0]


            print(wr_row_index + 1, wr_col_index + 1, goude_char)
        except EOFError:
            break


main666()
