content: {-# LANGUAGE GADTs, FlexibleInstances, FunctionalDependencies, EmptyDataDeriving #-}module Main(main)where{import Data.Char(ord);import Data.Bits(xor,Bits);import Data.Word(Word8);import System.IO;data IIlIll;data IIlIlI llIIII;lIllll::IlIlIl lIIlII->lIIlII;lIllll IlIIll=concat;lIllll IllllI=zipWith;lIllll IIlIIl=take;lIllll IIIIlI=drop;lIllll IIIlIl=length;lIllll IIllII=foldr;lIllll IIlIll=foldl1;lIllll IIIlll=xor;lIllll IlIllI=iterate;lIllll IIIllI=map;lIllll IIIIII=fromIntegral;lIllll IlllIl=ord;data IlIlIl llIIII where{IlIIll::Foldable llIllI=>IlIlIl(llIllI[lIIlII]->[lIIlII]);IllllI::IlIlIl((lIIlII->lllIII->lIlIlI)->[lIIlII]->[lllIII]->[lIlIlI]);IIlIIl::IlIlIl(Int->[lIIlII]->[lIIlII]);IIIIlI::IlIlIl(Int->[lIIlII]->[lIIlII]);IIIlIl::Foldable llIllI=>IlIlIl(llIllI lIIlII->Int);IIllII::Foldable llIllI=>IlIlIl((lIIlII->lllIII->lllIII)->lllIII->llIllI lIIlII->lllIII);IIlIll::Foldable llIllI=>IlIlIl((lIIlII->lIIlII->lIIlII)->llIllI lIIlII->lIIlII);IIIlll::Bits lIIlII=>IlIlIl(lIIlII->lIIlII->lIIlII);IlIllI::IlIlIl((lIIlII->lIIlII)->lIIlII->[lIIlII]);IIIllI::IlIlIl((lIIlII->lllIII)->[lIIlII]->[lllIII]);IIIIII::(Integral lIIlII,Num lllIII)=>IlIlIl(lIIlII->lllIII);IlllIl::IlIlIl(Char->Int)};data IlIlII llIIII where{IlIlII::[Word8]->IlIlII llIIII;};class IIIlII llIIII llIIlI|llIIII->llIIlI where{llIlII::IlIlII llIIII->IlIlII llIIlI;};instance IIIlII IIlIll(IIlIlI IIlIll)where{llIlII(IlIlII lIIIll)=IlIlII$lIllll IlIIll. lIllll IllllI(\lIIIll llIIII->lIllll IIlIIl(lIllll IIIlIl llIIII)(lIllll IIIIlI lIIIll((\lIIIll->let llIIII=lIIIll++llIIII in llIIII)llIIII)))[0..]$(let llIIll _ []=[];llIIll lllIIl llIIII=lIllll IIlIIl lllIIl llIIII:llIIll lllIIl(lIllll IIIIlI lllIIl llIIII)in llIIll 4)lIIIll;};instance IIIlII(IIlIlI IIlIll)(IIlIlI(IIlIlI IIlIll))where{llIlII(IlIlII lIIIll)=IlIlII$lIllll IIIllI(\lIIIll->6*lIIIll^6+2*lIIIll^3+lIIIll)lIIIll;};instance IIIlII(IIlIlI(IIlIlI IIlIll))(IIlIlI(IIlIlI(IIlIlI IIlIll)))where{llIlII(IlIlII lIIIll)=IlIlII$lIllll IIllII(\llIlIl lllllI@(lIIIII:_)->lIllll IIIlll lIIIII llIlIl:lllllI)[head lIIIll](tail lIIIll);};instance IIIlII(IIlIlI(IIlIlI(IIlIlI IIlIll)))IIlIll where{llIlII(IlIlII lIIIll)=IlIlII$lIllll IlIllI(\lIIIll->tail lIIIll++[lIllll IIllII(lIllll IIIlll)0 lIIIll])lIIIll!!3;};main=putStr"Flag: ">>hFlush stdout>>getLine>>= \lIIlII->putStrLn$(if(2205967053642207131367982253372196254666549571698892523008302353266425115464942068759663110459718064363978392428938015071==).lIllll IIlIll(\lllllI llIlIl->lllllI*256+llIlIl).lIllll IIIllI(lIllll IIIIII).(\(IlIlII lIIIll)->lIIIll)$(lIllll IlIllI(llIlII.llIlII.llIlII.llIlII)(IlIlII$lIllll IIIllI(lIllll IIIIII. lIllll IlllIl)lIIlII::IlIlII IIlIll)!!13)then"That's the flag!"else"Nope!")}
  