I have several sub programs that each do a small process (I.e. picking up a spring, orienting, inserting in machine) . I have them each in an if statement so that if no part is detected the robot does not continue to do the remainder of the steps and moves back . That is fine but I also need to add a case within the subprogram that can discard the spring if it cant be aligned. So in this case I would need to jump back to the subprogram where I initially gripped the spring. I can make the first and last waypoint of all of the programs the same to remove the complication of finding a safe route to the previous program.