slightly less awkward try/CATCH