public override int GetHashCode() { unchecked { var hashCode = DirectChild.GetHashCode(); hashCode = (hashCode * 397) ^ (Selector != null ? Selector.GetHashCode() : 0); hashCode = (hashCode * 397) ^ (AnchestorSelector != null ? AnchestorSelector.GetHashCode() : 0); return(hashCode); } }