let path_opt_good_foundf seen notseen havechecked xy xy2 = let notseen'' = List.tl ((Geometry.line xy xy2) @ havechecked) in (seen @ [xy], notseen'', List.rev notseen'', [])