Refactor Conditions