No, what i mean is, the return has no relevance to the next part of the script (msg or describe)
I would understand if the first 2 in the %say were describes only so it would only describe them & msg the rest, but your second set of randoms (1-9 and 1-2) cover the same messages... there's no logic! it's just at random describe/msg
In the original script there are some that need msgin & some describing.. Just saying :)