moved util_exception to separate header