// <auto-generated>
//     Generated by the protocol buffer compiler.  DO NOT EDIT!
//     source: mysqlx_session.proto
// </auto-generated>
#pragma warning disable 1591, 0612, 3021
#region Designer generated code

using pb = global::Google.Protobuf;
using pbc = global::Google.Protobuf.Collections;
using pbr = global::Google.Protobuf.Reflection;
using scg = global::System.Collections.Generic;
namespace Mysqlx.Session {

  /// <summary>Holder for reflection information generated from mysqlx_session.proto</summary>
  internal static partial class MysqlxSessionReflection {

    #region Descriptor
    /// <summary>File descriptor for mysqlx_session.proto</summary>
    public static pbr::FileDescriptor Descriptor {
      get { return descriptor; }
    }
    private static pbr::FileDescriptor descriptor;

    static MysqlxSessionReflection() {
      byte[] descriptorData = global::System.Convert.FromBase64String(
          string.Concat(
            "ChRteXNxbHhfc2Vzc2lvbi5wcm90bxIOTXlzcWx4LlNlc3Npb24aDG15c3Fs",
            "eC5wcm90byJZChFBdXRoZW50aWNhdGVTdGFydBIRCgltZWNoX25hbWUYASAB",
            "KAkSEQoJYXV0aF9kYXRhGAIgASgMEhgKEGluaXRpYWxfcmVzcG9uc2UYAyAB",
            "KAw6BIjqMAQiMwoUQXV0aGVudGljYXRlQ29udGludWUSEQoJYXV0aF9kYXRh",
            "GAEgASgMOgiQ6jADiOowBSIpCg5BdXRoZW50aWNhdGVPaxIRCglhdXRoX2Rh",
            "dGEYASABKAw6BJDqMAQiIAoFUmVzZXQSEQoJa2VlcF9vcGVuGAEgASgIOgSI",
            "6jAGIg0KBUNsb3NlOgSI6jAHQhkKF2NvbS5teXNxbC5jai54LnByb3RvYnVm",
            "YgZwcm90bzM="));
      descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
          new pbr::FileDescriptor[] { global::Mysqlx.MysqlxReflection.Descriptor, },
          new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
            new pbr::GeneratedClrTypeInfo(typeof(global::Mysqlx.Session.AuthenticateStart), global::Mysqlx.Session.AuthenticateStart.Parser, new[]{ "MechName", "AuthData", "InitialResponse" }, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::Mysqlx.Session.AuthenticateContinue), global::Mysqlx.Session.AuthenticateContinue.Parser, new[]{ "AuthData" }, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::Mysqlx.Session.AuthenticateOk), global::Mysqlx.Session.AuthenticateOk.Parser, new[]{ "AuthData" }, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::Mysqlx.Session.Reset), global::Mysqlx.Session.Reset.Parser, new[]{ "KeepOpen" }, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::Mysqlx.Session.Close), global::Mysqlx.Session.Close.Parser, null, null, null, null)
          }));
    }
    #endregion

  }
  #region Messages
  /// <summary>
  /// the initial message send from the client to the server to start the
  /// authentication proccess
  ///
  /// :param mech_name: authentication mechanism name
  /// :param auth_data: authentication data
  /// :param initial_response: initial response
  /// :Returns: :protobuf:msg:`Mysqlx.Session::AuthenticateContinue`
  /// </summary>
  internal sealed partial class AuthenticateStart : pb::IMessage<AuthenticateStart> {
    private static readonly pb::MessageParser<AuthenticateStart> _parser = new pb::MessageParser<AuthenticateStart>(() => new AuthenticateStart());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public static pb::MessageParser<AuthenticateStart> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::Mysqlx.Session.MysqlxSessionReflection.Descriptor.MessageTypes[0]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public AuthenticateStart() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public AuthenticateStart(AuthenticateStart other) : this() {
      mechName_ = other.mechName_;
      authData_ = other.authData_;
      initialResponse_ = other.initialResponse_;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public AuthenticateStart Clone() {
      return new AuthenticateStart(this);
    }

    /// <summary>Field number for the "mech_name" field.</summary>
    public const int MechNameFieldNumber = 1;
    private string mechName_ = "";
    /// <summary>
    ///required
    /// </summary>
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public string MechName {
      get { return mechName_; }
      set {
        mechName_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    /// <summary>Field number for the "auth_data" field.</summary>
    public const int AuthDataFieldNumber = 2;
    private pb::ByteString authData_ = pb::ByteString.Empty;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public pb::ByteString AuthData {
      get { return authData_; }
      set {
        authData_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    /// <summary>Field number for the "initial_response" field.</summary>
    public const int InitialResponseFieldNumber = 3;
    private pb::ByteString initialResponse_ = pb::ByteString.Empty;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public pb::ByteString InitialResponse {
      get { return initialResponse_; }
      set {
        initialResponse_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public override bool Equals(object other) {
      return Equals(other as AuthenticateStart);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public bool Equals(AuthenticateStart other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (MechName != other.MechName) return false;
      if (AuthData != other.AuthData) return false;
      if (InitialResponse != other.InitialResponse) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public override int GetHashCode() {
      int hash = 1;
      if (MechName.Length != 0) hash ^= MechName.GetHashCode();
      if (AuthData.Length != 0) hash ^= AuthData.GetHashCode();
      if (InitialResponse.Length != 0) hash ^= InitialResponse.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public void WriteTo(pb::CodedOutputStream output) {
      if (MechName.Length != 0) {
        output.WriteRawTag(10);
        output.WriteString(MechName);
      }
      if (AuthData.Length != 0) {
        output.WriteRawTag(18);
        output.WriteBytes(AuthData);
      }
      if (InitialResponse.Length != 0) {
        output.WriteRawTag(26);
        output.WriteBytes(InitialResponse);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public int CalculateSize() {
      int size = 0;
      if (MechName.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(MechName);
      }
      if (AuthData.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeBytesSize(AuthData);
      }
      if (InitialResponse.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeBytesSize(InitialResponse);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public void MergeFrom(AuthenticateStart other) {
      if (other == null) {
        return;
      }
      if (other.MechName.Length != 0) {
        MechName = other.MechName;
      }
      if (other.AuthData.Length != 0) {
        AuthData = other.AuthData;
      }
      if (other.InitialResponse.Length != 0) {
        InitialResponse = other.InitialResponse;
      }
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public void MergeFrom(pb::CodedInputStream input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
        switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 10: {
            MechName = input.ReadString();
            break;
          }
          case 18: {
            AuthData = input.ReadBytes();
            break;
          }
          case 26: {
            InitialResponse = input.ReadBytes();
            break;
          }
        }
      }
    }

  }

  /// <summary>
  /// send by client or server after a :protobuf:msg:`Mysqlx.Session::AuthenticateStart` to
  /// exchange more auth data
  ///
  /// :param auth_data: authentication data
  /// :Returns: :protobuf:msg:`Mysqlx.Session::AuthenticateContinue`
  /// </summary>
  internal sealed partial class AuthenticateContinue : pb::IMessage<AuthenticateContinue> {
    private static readonly pb::MessageParser<AuthenticateContinue> _parser = new pb::MessageParser<AuthenticateContinue>(() => new AuthenticateContinue());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public static pb::MessageParser<AuthenticateContinue> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::Mysqlx.Session.MysqlxSessionReflection.Descriptor.MessageTypes[1]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public AuthenticateContinue() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public AuthenticateContinue(AuthenticateContinue other) : this() {
      authData_ = other.authData_;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public AuthenticateContinue Clone() {
      return new AuthenticateContinue(this);
    }

    /// <summary>Field number for the "auth_data" field.</summary>
    public const int AuthDataFieldNumber = 1;
    private pb::ByteString authData_ = pb::ByteString.Empty;
    /// <summary>
    ///required
    /// </summary>
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public pb::ByteString AuthData {
      get { return authData_; }
      set {
        authData_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public override bool Equals(object other) {
      return Equals(other as AuthenticateContinue);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public bool Equals(AuthenticateContinue other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (AuthData != other.AuthData) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public override int GetHashCode() {
      int hash = 1;
      if (AuthData.Length != 0) hash ^= AuthData.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public void WriteTo(pb::CodedOutputStream output) {
      if (AuthData.Length != 0) {
        output.WriteRawTag(10);
        output.WriteBytes(AuthData);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public int CalculateSize() {
      int size = 0;
      if (AuthData.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeBytesSize(AuthData);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public void MergeFrom(AuthenticateContinue other) {
      if (other == null) {
        return;
      }
      if (other.AuthData.Length != 0) {
        AuthData = other.AuthData;
      }
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public void MergeFrom(pb::CodedInputStream input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
        switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 10: {
            AuthData = input.ReadBytes();
            break;
          }
        }
      }
    }

  }

  /// <summary>
  /// sent by the server after successful authentication
  ///
  /// :param auth_data: authentication data
  /// </summary>
  internal sealed partial class AuthenticateOk : pb::IMessage<AuthenticateOk> {
    private static readonly pb::MessageParser<AuthenticateOk> _parser = new pb::MessageParser<AuthenticateOk>(() => new AuthenticateOk());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public static pb::MessageParser<AuthenticateOk> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::Mysqlx.Session.MysqlxSessionReflection.Descriptor.MessageTypes[2]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public AuthenticateOk() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public AuthenticateOk(AuthenticateOk other) : this() {
      authData_ = other.authData_;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public AuthenticateOk Clone() {
      return new AuthenticateOk(this);
    }

    /// <summary>Field number for the "auth_data" field.</summary>
    public const int AuthDataFieldNumber = 1;
    private pb::ByteString authData_ = pb::ByteString.Empty;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public pb::ByteString AuthData {
      get { return authData_; }
      set {
        authData_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public override bool Equals(object other) {
      return Equals(other as AuthenticateOk);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public bool Equals(AuthenticateOk other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (AuthData != other.AuthData) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public override int GetHashCode() {
      int hash = 1;
      if (AuthData.Length != 0) hash ^= AuthData.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public void WriteTo(pb::CodedOutputStream output) {
      if (AuthData.Length != 0) {
        output.WriteRawTag(10);
        output.WriteBytes(AuthData);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public int CalculateSize() {
      int size = 0;
      if (AuthData.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeBytesSize(AuthData);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public void MergeFrom(AuthenticateOk other) {
      if (other == null) {
        return;
      }
      if (other.AuthData.Length != 0) {
        AuthData = other.AuthData;
      }
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public void MergeFrom(pb::CodedInputStream input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
        switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 10: {
            AuthData = input.ReadBytes();
            break;
          }
        }
      }
    }

  }

  /// <summary>
  /// reset the current session
  /// param keep_open: if is true the session will be reset, but stays authenticated.
  ///       otherwise, the session will be closed and needs to be authenticated again.
  ///
  /// :Returns: :protobuf:msg:`Mysqlx::Ok`
  /// </summary>
  internal sealed partial class Reset : pb::IMessage<Reset> {
    private static readonly pb::MessageParser<Reset> _parser = new pb::MessageParser<Reset>(() => new Reset());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public static pb::MessageParser<Reset> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::Mysqlx.Session.MysqlxSessionReflection.Descriptor.MessageTypes[3]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public Reset() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public Reset(Reset other) : this() {
      keepOpen_ = other.keepOpen_;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public Reset Clone() {
      return new Reset(this);
    }

    /// <summary>Field number for the "keep_open" field.</summary>
    public const int KeepOpenFieldNumber = 1;
    private bool keepOpen_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public bool KeepOpen {
      get { return keepOpen_; }
      set {
        keepOpen_ = value;
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public override bool Equals(object other) {
      return Equals(other as Reset);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public bool Equals(Reset other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (KeepOpen != other.KeepOpen) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public override int GetHashCode() {
      int hash = 1;
      if (KeepOpen != false) hash ^= KeepOpen.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public void WriteTo(pb::CodedOutputStream output) {
      if (KeepOpen != false) {
        output.WriteRawTag(8);
        output.WriteBool(KeepOpen);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public int CalculateSize() {
      int size = 0;
      if (KeepOpen != false) {
        size += 1 + 1;
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public void MergeFrom(Reset other) {
      if (other == null) {
        return;
      }
      if (other.KeepOpen != false) {
        KeepOpen = other.KeepOpen;
      }
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public void MergeFrom(pb::CodedInputStream input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
        switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 8: {
            KeepOpen = input.ReadBool();
            break;
          }
        }
      }
    }

  }

  /// <summary>
  /// close the current session
  ///
  /// :Returns: :protobuf:msg:`Mysqlx::Ok`
  /// </summary>
  internal sealed partial class Close : pb::IMessage<Close> {
    private static readonly pb::MessageParser<Close> _parser = new pb::MessageParser<Close>(() => new Close());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public static pb::MessageParser<Close> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::Mysqlx.Session.MysqlxSessionReflection.Descriptor.MessageTypes[4]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public Close() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public Close(Close other) : this() {
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public Close Clone() {
      return new Close(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public override bool Equals(object other) {
      return Equals(other as Close);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public bool Equals(Close other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public override int GetHashCode() {
      int hash = 1;
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public void WriteTo(pb::CodedOutputStream output) {
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public int CalculateSize() {
      int size = 0;
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public void MergeFrom(Close other) {
      if (other == null) {
        return;
      }
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public void MergeFrom(pb::CodedInputStream input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
        switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
        }
      }
    }

  }

  #endregion

}

#endregion Designer generated code
