This was fun to work on...