This is a nice use of `try`