further improve exception handling