public override int GetHashCode() { unchecked { var hash = 17; hash = hash * 23 + NoControlInput.GetHashCode(); hash = hash * 23 + SingleControlInput.GetHashCode(); hash = hash * 23 + MultipleControlInputs.GetHashCode(); hash = hash * 23 + NoValueInput.GetHashCode(); hash = hash * 23 + SingleValueInput.GetHashCode(); hash = hash * 23 + MultipleValueInputs.GetHashCode(); hash = hash * 23 + NoControlOutput.GetHashCode(); hash = hash * 23 + SingleControlOutput.GetHashCode(); hash = hash * 23 + MultipleControlOutputs.GetHashCode(); hash = hash * 23 + NoValueOutput.GetHashCode(); hash = hash * 23 + SingleValueOutput.GetHashCode(); hash = hash * 23 + MultipleValueOutputs.GetHashCode(); hash = hash * 23 + Self.GetHashCode(); hash = hash * 23 + Events.GetHashCode(); hash = hash * 23 + Literals.GetHashCode(); hash = hash * 23 + Variables.GetHashCode(); hash = hash * 23 + Members.GetHashCode(); hash = hash * 23 + Nesters.GetHashCode(); hash = hash * 23 + Expose.GetHashCode(); hash = hash * 23 + Obsolete.GetHashCode(); hash = hash * 23 + AllowSelfNestedGraph.GetHashCode(); hash = hash * 23 + (CompatibleInputType?.GetHashCode() ?? 0); hash = hash * 23 + (CompatibleOutputType?.GetHashCode() ?? 0); hash = hash * 23 + GraphHashCode; return(hash); } }