public override int GetHashCode() { unchecked { int result = Selectors.GetHashCode(); result = (result*397) ^ Properties.GetHashCode(); result = (result*397) ^ Rules.GetHashCode(); return result; } } }