refactor checkers