q[h,f](d,n)|"u"<-d=[h-n,f]|"d"<-d=[h+n,f]|let=[h,f+n] p[h,f,a](d,n)|"u"<-d=[h,f,a-n]|"d"<-d=[h,f,a+n]|let=[h+n,f+n*a,a] main=interact$show.(\a->product.($a)<$>[init.foldl p[0,0,0],foldl q[0,0]]).map(fmap read.splitAt 1.map head.words).lines