I got lazy halfway through, but this was a lot of fun!