protected void RuleChanged() => OnRuleChanged?.Invoke();
private void RuleChanged() => OnRuleChanged?.Invoke();