experimenting with chaining exceptions up the stack