Hmm, this is a tough one. You've definitely found a bug, but I'm just not seeing the problem in the code. This one might take me a little while to fix. I really appreciate how diligent you've been in documenting the problem. I'll get it figured out ASAP.