cannot figure out backtracking .. NEED STATE!