General Methods In Backtracking