the transfer functions only use the size, the return is only used in the next loop iteration which will then have size 0 so not check anything beyong boundary.