fin=open("DATA2.txt","r")
fout=open("OUT2.txt","w")
lines=fin.readlines()
for a in range(0, len(lines)):
    lines[a]=lines[a].replace("\n", "")
s=[]
lines2=[]
for a in range(1, len(lines)/3+1):
    s=[]
    s.append(lines[3*a-3])
    s.append(lines[3*a-2])
    s.append(lines[3*a-1])    
    lines2.append(s)


def horizontal(x, c):
    count=0
    for a in c:
        for b in a:
            if b==x:
                count=count+1
        if count==3:
            return x
        else:
            count=0
    count=0
def vertical(x, c):
    count=0
    for a in range(0, 3):
        for b in c:
            if b[a]==x:
                count=count+1
            else:
                count=0
        if count==3:
            return x
    count=0
def diagonal(x, c):
    count=0    
    for a in range(0, 3):
        if c[a][a]==x:
            count=count+1
        else:
            count=0
    if count==3:
        return x
def diagonal2(x, c):
    if c[0][2]==x and c[1][1]==x and c[2][0]==x:
        return x

print lines2
for a in lines2:
    if horizontal("X", a)=="X" or vertical("X", a)=="X" or diagonal("X", a)=="X"or diagonal2("X", a)=="X":
        fout.write("X"+"\n")
    elif horizontal("O", a)=="O" or vertical("O",a)=="O" or diagonal("O",a)=="O" or diagonal2("O",a)=="O":
        fout.write("O"+"\n")
    else:
        fout.write("."+"\n")
#print finalcheck()
fout.close()
