@java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasSessionId()) {
        hash = (37 * hash) + SESSION_ID_FIELD_NUMBER;
        hash = (53 * hash) + getSessionId().hashCode();
      }
      if (hasMessageType()) {
        hash = (37 * hash) + MESSAGE_TYPE_FIELD_NUMBER;
        hash = (53 * hash) + messageType_;
      }
      if (hasRequest()) {
        hash = (37 * hash) + REQUEST_FIELD_NUMBER;
        hash = (53 * hash) + getRequest().hashCode();
      }
      if (hasResponse()) {
        hash = (37 * hash) + RESPONSE_FIELD_NUMBER;
        hash = (53 * hash) + getResponse().hashCode();
      }
      if (hasFailure()) {
        hash = (37 * hash) + FAILURE_FIELD_NUMBER;
        hash = (53 * hash) + getFailure().hashCode();
      }
      hash = (29 * hash) + getUnknownFields().hashCode();
      memoizedHashCode = hash;
      return hash;
    }
@java.lang.Override
    public int hashCode()