public override int GetHashCode() { unchecked { int result = Kind.GetHashCode(); result = (result*397) ^ (Name != null ? Name.GetHashCode() : 0); result = (result*397) ^ (Args != null ? Args.GetHashCode() : 0); return result; } }