return const todo [pairnewconst const copy(while todox , todo pop(newconst add(( , )for , in newconstif == and ( ,ynot in newconsttodo append(( , )if == and ( , not in newconsttodo append(( , )return newconst def possible(self,pair,constraint)( ,ypair return ( ,xnot in constraint some code for testingstripspop py -(continued from searchbranchandbound import df_branch_and_bound from searchmpp import searchermpp from stripsproblem import problem problem problem blocks blocks blocks rplanning pop_search_from_strips(problem rplanning pop_search_from_strips(problem rplanning pop_search_from_strips(problem searcher df_branch_and_bound(rplanning , searcher searchermpp(rplanning searcher df_branch_and_bound(rplanning , searcher searchermpp(rplanning searcher df_branch_and_bound(rplanning , searcher searchermpp(rplanning try one of the following searchers searcher search( searcher search( end(extract_plan(print plan found end(constraints print the constraints searchermpp max_display_level less detailed display df_branch_and_bound max_display_level less detailed display searcher search( searcher search( searcher search( searcher search(version june