moved exceptions into enforce