I'll look at the code, but an explanation in words might help too.