refactor checks and facilities