import Control.Applicative ((<$>)) import Control.Monad import Data.List main :: IO () main = do n <- getl read solve <$> replicateM n (words <$> getLine) >>= print solve :: [[String]] -> Int solve = head . foldl' f [0..9] where f ls [a, b, c, d, r] = let ys = [read a, read b, read c, read d] in if r == "YES" then ls `intersect` ys else ls \\ ys getl :: (String -> a) -> IO a getl f = f <$> getLine