Improve catch & throw handling