import qualified Data.Text as T import qualified Data.Text.IO as TI import Data.Traversable import Data.Foldable import Control.Applicative import Data.Monoid import Prelude hiding (sequence,foldr,elem) import Control.Monad hiding (sequence) import Control.Monad.Trans.Class import Control.Monad.Trans.Maybe import Data.Maybe instance Monoid a => Monoid (IO a) where mempty = return mempty mappend a b = mappend <$> a <*> b readLines = sequence.flip replicate TI.getLine check values [] = values check values ((True,input):inputs) = let new_values=filter (flip elem input) values in check new_values inputs check values ((False,input):inputs) = let new_values=filter (not.flip elem input) values in check new_values inputs parse list = let last=list!!(length list-1) result=if last=="YES" then True else False numbers=fmap read$take 4 list::[Int] in (result,numbers) main = do n<-read<$>getLine::IO Int list<-fmap ((fmap T.unpack).T.split (==' '))<$>readLines n let result=head$check [0..9]$fmap parse list putStrLn$show result