q(h:f:_)(d,n)|"f"d=[h+n,f]|let=[h,f+n] p[h,f,a](d,n)|"f"d=[h,f,a+n]|let=[h+n,f+n*a,a] main=interact$show.(<$>[p,q]).((product.take 2).).flip(`foldl`[0,0,0]).map(fmap read.splitAt 1.map head.words).lines