You might get some mileage moving this:
Your calling the second test ( on the branch ) after the variable has already been decremented.
( so just do the if directly from the SET node )
Helped, thank you!