I'm not a huge fan of exceptions for flow control, but I don't hate it enough to do anything about it ;)