fun readStr () = let fun scan reader stream = SOME (StringCvt.splitl (not o Char.isSpace) reader (StringCvt.skipWS reader stream)) in valOf (TextIO.scanStream scan TextIO.stdIn) end fun findAns s = let fun findAnsAux [] = "NA" | findAnsAux [_] = "NA" | findAnsAux [_, _] = "NA" | findAnsAux (#"O" :: #"O" :: #"O" :: _) = "East" | findAnsAux (#"X" :: #"X" :: #"X" :: _) = "West" | findAnsAux (_ :: tl) = findAnsAux tl in findAnsAux (String.explode s) end val () = let val s = readStr () val ans = findAns s in print (ans ^ "\n") end