separate exception into new classes