fixed the backtracking problem (was choosing new virtual source incorrectly)