refactor under ConstraintManager folder