refering to erickwill@github solution, this solution is better: no overrun process, end immediately if going to the position that went before