Yikes! Please tell me you didn't have to code this all from scratch... kudos to you either way for figuring it out.