import Data.List a ','="\n";a s=[s] q r=dropWhile(not.isInfixOf r.head) s=(head.).q g x=zipWith(++)[a++","|a<-s"pl"x]$s"HC ("x main=interact$unlines.g.transpose.q"[D".map(lines.(>>=a)).lines