adding exception handler decorator