Minor optimization - disable the module in the constructor if the conditions are not met. This prevents execute() being called at all.