@@ -564,7 +564,7 @@ checkMP ist i mp = if i > 0
564564-- tryPath (-10000) ((e, desc) : path) es 0
565565 tryPath desc path (e@(f, nextargs) : es) arg
566566 | Just d <- lookup e path
567− = if (desc - d) > 0
567+ = if desc > 0
568568 then -- trace ("Descent " ++ show (desc - d) ++ " "
569569 -- ++ show (path, e)) $
570570 Total []
@@ -585,9 +585,8 @@ checkMP ist i mp = if i > 0
585585 Just (nextarg, sc) ->
586586 if nextarg == arg then
587587 case sc of
588− Same -> return $ tryPath desc ((e, desc):path)
589− es
590− pos
588+ Same -> return $ tryPath desc ((e, desc) : path)
589+ es pos
591590 Smaller -> return $ tryPath (desc+1)
592591 ((e, desc):path)
593592 es
@@ -607,6 +606,6 @@ collapse xs = collapse' Unchecked xs
607606collapse' def (Total r : xs) = Total r
608607collapse' def (Unchecked : xs) = collapse' def xs
609608collapse' def (d : xs) = collapse' d xs
610−collapse' Unchecked [] = Total []
609+-- collapse' Unchecked [] = Total []
611610collapse' def [] = def
612611