driller explained the 4&$A + 5, $t mod 10 makes sense too, right?
$ is any value left of the original value.
so:
if reminder + anyvalue_left or current_value smaller than 3 or greater than 6

the anyvalue_left reverts back to the for loop.
the loop goes 16 times (or 15, if left(input,1)=3)
if after that, any value is left to be processed => over length of input.

ok, hope that made any sense.
_________________________
!

download KiXnet