The `requires` and `trigger` method_s_ define the conditions