improve exceptions dispatcher