public override int GetHashCode()
                {
                    int hash = 1;

                    if (ReceiverId.Length != 0)
                    {
                        hash ^= ReceiverId.GetHashCode();
                    }
                    if (TechnicalMessageType.Length != 0)
                    {
                        hash ^= TechnicalMessageType.GetHashCode();
                    }
                    if (TeamSetContextId.Length != 0)
                    {
                        hash ^= TeamSetContextId.GetHashCode();
                    }
                    if (chunkContext_ != null)
                    {
                        hash ^= ChunkContext.GetHashCode();
                    }
                    if (PayloadSize != 0L)
                    {
                        hash ^= PayloadSize.GetHashCode();
                    }
                    if (sentTimestamp_ != null)
                    {
                        hash ^= SentTimestamp.GetHashCode();
                    }
                    if (SequenceNumber != 0L)
                    {
                        hash ^= SequenceNumber.GetHashCode();
                    }
                    if (SenderId.Length != 0)
                    {
                        hash ^= SenderId.GetHashCode();
                    }
                    if (createdAt_ != null)
                    {
                        hash ^= CreatedAt.GetHashCode();
                    }
                    if (MessageId.Length != 0)
                    {
                        hash ^= MessageId.GetHashCode();
                    }
                    if (metadata_ != null)
                    {
                        hash ^= Metadata.GetHashCode();
                    }
                    if (_unknownFields != null)
                    {
                        hash ^= _unknownFields.GetHashCode();
                    }
                    return(hash);
                }
        public override int GetHashCode()
        {
            int hash = 1;

            if (ApplicationMessageId.Length != 0)
            {
                hash ^= ApplicationMessageId.GetHashCode();
            }
            if (ApplicationMessageSeqNo != 0L)
            {
                hash ^= ApplicationMessageSeqNo.GetHashCode();
            }
            if (TechnicalMessageType.Length != 0)
            {
                hash ^= TechnicalMessageType.GetHashCode();
            }
            if (TeamSetContextId.Length != 0)
            {
                hash ^= TeamSetContextId.GetHashCode();
            }
            if (Mode != global::Agrirouter.Request.RequestEnvelope.Types.Mode.Direct)
            {
                hash ^= Mode.GetHashCode();
            }
            hash ^= recipients_.GetHashCode();
            if (chunkInfo_ != null)
            {
                hash ^= ChunkInfo.GetHashCode();
            }
            if (timestamp_ != null)
            {
                hash ^= Timestamp.GetHashCode();
            }
            if (metadata_ != null)
            {
                hash ^= Metadata.GetHashCode();
            }
            if (_unknownFields != null)
            {
                hash ^= _unknownFields.GetHashCode();
            }
            return(hash);
        }