it is based on a tutorial from erel.But if your serious then shouldn't it be:
I was joking!Before the DO, the code is setting "MyIndex = Label1Index".
Then the code inside the DO/LOOP never changes either value, so the "If Myindex <> List1Index then Return" will never happen! (unless List1Index is changed async outside of this routine)