Experimenting with exceptions.  probably wont work