public override bool UndefineRule(Rule r) { if (!base.UndefineRule(r)) { return false; } bool removed = modes[r.mode].Remove(r); Debug.Assert(removed); return true; } }