#pragma warning disable DontUseNamespaceAliases // Namespace Aliases should be avoided 
#pragma warning disable NamespaceMatchesFolderStructure // Namespace Declarations must match folder structure 
// <auto-generated>
//     Generated by the protocol buffer compiler.  DO NOT EDIT!
//     source: TestData/CassandraHotelSchema.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 Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf {

  /// <summary>Holder for reflection information generated from TestData/CassandraHotelSchema.proto</summary>
  public static partial class CassandraHotelSchemaReflection {

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

    static CassandraHotelSchemaReflection() {
      byte[] descriptorData = global::System.Convert.FromBase64String(
          string.Concat(
            "CiNUZXN0RGF0YS9DYXNzYW5kcmFIb3RlbFNjaGVtYS5wcm90bxJITWljcm9z",
            "b2Z0LkF6dXJlLkNvc21vcy5TZXJpYWxpemF0aW9uLkh5YnJpZFJvdy5UZXN0",
            "cy5QZXJmLkNhc3NhbmRyYUhvdGVsGh5nb29nbGUvcHJvdG9idWYvd3JhcHBl",
            "cnMucHJvdG8iYgoKUG9zdGFsQ29kZRIoCgN6aXAYASABKAsyGy5nb29nbGUu",
            "cHJvdG9idWYuSW50MzJWYWx1ZRIqCgVwbHVzNBgCIAEoCzIbLmdvb2dsZS5w",
            "cm90b2J1Zi5JbnQzMlZhbHVlIvsBCgdBZGRyZXNzEiwKBnN0cmVldBgBIAEo",
            "CzIcLmdvb2dsZS5wcm90b2J1Zi5TdHJpbmdWYWx1ZRIqCgRjaXR5GAIgASgL",
            "MhwuZ29vZ2xlLnByb3RvYnVmLlN0cmluZ1ZhbHVlEisKBXN0YXRlGAMgASgL",
            "MhwuZ29vZ2xlLnByb3RvYnVmLlN0cmluZ1ZhbHVlEmkKC3Bvc3RhbF9jb2Rl",
            "GAQgASgLMlQuTWljcm9zb2Z0LkF6dXJlLkNvc21vcy5TZXJpYWxpemF0aW9u",
            "Lkh5YnJpZFJvdy5UZXN0cy5QZXJmLkNhc3NhbmRyYUhvdGVsLlBvc3RhbENv",
            "ZGUi9QEKBkhvdGVscxIuCghob3RlbF9pZBgBIAEoCzIcLmdvb2dsZS5wcm90",
            "b2J1Zi5TdHJpbmdWYWx1ZRIqCgRuYW1lGAIgASgLMhwuZ29vZ2xlLnByb3Rv",
            "YnVmLlN0cmluZ1ZhbHVlEisKBXBob25lGAMgASgLMhwuZ29vZ2xlLnByb3Rv",
            "YnVmLlN0cmluZ1ZhbHVlEmIKB2FkZHJlc3MYBCABKAsyUS5NaWNyb3NvZnQu",
            "QXp1cmUuQ29zbW9zLlNlcmlhbGl6YXRpb24uSHlicmlkUm93LlRlc3RzLlBl",
            "cmYuQ2Fzc2FuZHJhSG90ZWwuQWRkcmVzcyLeAQodQXZhaWxhYmxlX1Jvb21z",
            "X0J5X0hvdGVsX0RhdGUSLgoIaG90ZWxfaWQYASABKAsyHC5nb29nbGUucHJv",
            "dG9idWYuU3RyaW5nVmFsdWUSKQoEZGF0ZRgCIAEoCzIbLmdvb2dsZS5wcm90",
            "b2J1Zi5JbnQ2NFZhbHVlEjAKC3Jvb21fbnVtYmVyGAMgASgLMhsuZ29vZ2xl",
            "LnByb3RvYnVmLkludDMyVmFsdWUSMAoMaXNfYXZhaWxhYmxlGAQgASgLMhou",
            "Z29vZ2xlLnByb3RvYnVmLkJvb2xWYWx1ZSKfBAoGR3Vlc3RzEi4KCGd1ZXN0",
            "X2lkGAEgASgLMhwuZ29vZ2xlLnByb3RvYnVmLlN0cmluZ1ZhbHVlEjAKCmZp",
            "cnN0X25hbWUYAiABKAsyHC5nb29nbGUucHJvdG9idWYuU3RyaW5nVmFsdWUS",
            "LwoJbGFzdF9uYW1lGAMgASgLMhwuZ29vZ2xlLnByb3RvYnVmLlN0cmluZ1Zh",
            "bHVlEisKBXRpdGxlGAQgASgLMhwuZ29vZ2xlLnByb3RvYnVmLlN0cmluZ1Zh",
            "bHVlEg4KBmVtYWlscxgFIAMoCRIVCg1waG9uZV9udW1iZXJzGAYgAygJEnIK",
            "CWFkZHJlc3NlcxgHIAMoCzJfLk1pY3Jvc29mdC5BenVyZS5Db3Ntb3MuU2Vy",
            "aWFsaXphdGlvbi5IeWJyaWRSb3cuVGVzdHMuUGVyZi5DYXNzYW5kcmFIb3Rl",
            "bC5HdWVzdHMuQWRkcmVzc2VzRW50cnkSNAoOY29uZmlybV9udW1iZXIYCCAB",
            "KAsyHC5nb29nbGUucHJvdG9idWYuU3RyaW5nVmFsdWUagwEKDkFkZHJlc3Nl",
            "c0VudHJ5EgsKA2tleRgBIAEoCRJgCgV2YWx1ZRgCIAEoCzJRLk1pY3Jvc29m",
            "dC5BenVyZS5Db3Ntb3MuU2VyaWFsaXphdGlvbi5IeWJyaWRSb3cuVGVzdHMu",
            "UGVyZi5DYXNzYW5kcmFIb3RlbC5BZGRyZXNzOgI4AUJUqgJRTWljcm9zb2Z0",
            "LkF6dXJlLkNvc21vcy5TZXJpYWxpemF0aW9uLkh5YnJpZFJvdy5UZXN0cy5Q",
            "ZXJmLkNhc3NhbmRyYUhvdGVsLlByb3RvYnVmYgZwcm90bzM="));
      descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
          new pbr::FileDescriptor[] { global::Google.Protobuf.WellKnownTypes.WrappersReflection.Descriptor, },
          new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
            new pbr::GeneratedClrTypeInfo(typeof(global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.PostalCode), global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.PostalCode.Parser, new[]{ "Zip", "Plus4" }, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.Address), global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.Address.Parser, new[]{ "Street", "City", "State", "PostalCode" }, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.Hotels), global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.Hotels.Parser, new[]{ "HotelId", "Name", "Phone", "Address" }, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.Available_Rooms_By_Hotel_Date), global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.Available_Rooms_By_Hotel_Date.Parser, new[]{ "HotelId", "Date", "RoomNumber", "IsAvailable" }, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.Guests), global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.Guests.Parser, new[]{ "GuestId", "FirstName", "LastName", "Title", "Emails", "PhoneNumbers", "Addresses", "ConfirmNumber" }, null, null, new pbr::GeneratedClrTypeInfo[] { null, })
          }));
    }
    #endregion

  }
  #region Messages
  public sealed partial class PostalCode : pb::IMessage<PostalCode> {
    private static readonly pb::MessageParser<PostalCode> _parser = new pb::MessageParser<PostalCode>(() => new PostalCode());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public static pb::MessageParser<PostalCode> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.CassandraHotelSchemaReflection.Descriptor.MessageTypes[0]; }
    }

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

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

    partial void OnConstruction();

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

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

    /// <summary>Field number for the "zip" field.</summary>
    public const int ZipFieldNumber = 1;
    private static readonly pb::FieldCodec<int?> _single_zip_codec = pb::FieldCodec.ForStructWrapper<int>(10);
    private int? zip_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public int? Zip {
      get { return zip_; }
      set {
        zip_ = value;
      }
    }

    /// <summary>Field number for the "plus4" field.</summary>
    public const int Plus4FieldNumber = 2;
    private static readonly pb::FieldCodec<int?> _single_plus4_codec = pb::FieldCodec.ForStructWrapper<int>(18);
    private int? plus4_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public int? Plus4 {
      get { return plus4_; }
      set {
        plus4_ = value;
      }
    }

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

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

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public override int GetHashCode() {
      int hash = 1;
      if (zip_ != null) hash ^= Zip.GetHashCode();
      if (plus4_ != null) hash ^= Plus4.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 (zip_ != null) {
        _single_zip_codec.WriteTagAndValue(output, Zip);
      }
      if (plus4_ != null) {
        _single_plus4_codec.WriteTagAndValue(output, Plus4);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public int CalculateSize() {
      int size = 0;
      if (zip_ != null) {
        size += _single_zip_codec.CalculateSizeWithTag(Zip);
      }
      if (plus4_ != null) {
        size += _single_plus4_codec.CalculateSizeWithTag(Plus4);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public void MergeFrom(PostalCode other) {
      if (other == null) {
        return;
      }
      if (other.zip_ != null) {
        if (zip_ == null || other.Zip != 0) {
          Zip = other.Zip;
        }
      }
      if (other.plus4_ != null) {
        if (plus4_ == null || other.Plus4 != 0) {
          Plus4 = other.Plus4;
        }
      }
      _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: {
            int? value = _single_zip_codec.Read(input);
            if (zip_ == null || value != 0) {
              Zip = value;
            }
            break;
          }
          case 18: {
            int? value = _single_plus4_codec.Read(input);
            if (plus4_ == null || value != 0) {
              Plus4 = value;
            }
            break;
          }
        }
      }
    }

  }

  public sealed partial class Address : pb::IMessage<Address> {
    private static readonly pb::MessageParser<Address> _parser = new pb::MessageParser<Address>(() => new Address());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public static pb::MessageParser<Address> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.CassandraHotelSchemaReflection.Descriptor.MessageTypes[1]; }
    }

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

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

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public Address(Address other) : this() {
      Street = other.Street;
      City = other.City;
      State = other.State;
      PostalCode = other.postalCode_ != null ? other.PostalCode.Clone() : null;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

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

    /// <summary>Field number for the "street" field.</summary>
    public const int StreetFieldNumber = 1;
    private static readonly pb::FieldCodec<string> _single_street_codec = pb::FieldCodec.ForClassWrapper<string>(10);
    private string street_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public string Street {
      get { return street_; }
      set {
        street_ = value;
      }
    }

    /// <summary>Field number for the "city" field.</summary>
    public const int CityFieldNumber = 2;
    private static readonly pb::FieldCodec<string> _single_city_codec = pb::FieldCodec.ForClassWrapper<string>(18);
    private string city_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public string City {
      get { return city_; }
      set {
        city_ = value;
      }
    }

    /// <summary>Field number for the "state" field.</summary>
    public const int StateFieldNumber = 3;
    private static readonly pb::FieldCodec<string> _single_state_codec = pb::FieldCodec.ForClassWrapper<string>(26);
    private string state_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public string State {
      get { return state_; }
      set {
        state_ = value;
      }
    }

    /// <summary>Field number for the "postal_code" field.</summary>
    public const int PostalCodeFieldNumber = 4;
    private global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.PostalCode postalCode_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.PostalCode PostalCode {
      get { return postalCode_; }
      set {
        postalCode_ = value;
      }
    }

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

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public bool Equals(Address other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (Street != other.Street) return false;
      if (City != other.City) return false;
      if (State != other.State) return false;
      if (!object.Equals(PostalCode, other.PostalCode)) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public override int GetHashCode() {
      int hash = 1;
      if (street_ != null) hash ^= Street.GetHashCode();
      if (city_ != null) hash ^= City.GetHashCode();
      if (state_ != null) hash ^= State.GetHashCode();
      if (postalCode_ != null) hash ^= PostalCode.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 (street_ != null) {
        _single_street_codec.WriteTagAndValue(output, Street);
      }
      if (city_ != null) {
        _single_city_codec.WriteTagAndValue(output, City);
      }
      if (state_ != null) {
        _single_state_codec.WriteTagAndValue(output, State);
      }
      if (postalCode_ != null) {
        output.WriteRawTag(34);
        output.WriteMessage(PostalCode);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public int CalculateSize() {
      int size = 0;
      if (street_ != null) {
        size += _single_street_codec.CalculateSizeWithTag(Street);
      }
      if (city_ != null) {
        size += _single_city_codec.CalculateSizeWithTag(City);
      }
      if (state_ != null) {
        size += _single_state_codec.CalculateSizeWithTag(State);
      }
      if (postalCode_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(PostalCode);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public void MergeFrom(Address other) {
      if (other == null) {
        return;
      }
      if (other.street_ != null) {
        if (street_ == null || other.Street != "") {
          Street = other.Street;
        }
      }
      if (other.city_ != null) {
        if (city_ == null || other.City != "") {
          City = other.City;
        }
      }
      if (other.state_ != null) {
        if (state_ == null || other.State != "") {
          State = other.State;
        }
      }
      if (other.postalCode_ != null) {
        if (postalCode_ == null) {
          postalCode_ = new global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.PostalCode();
        }
        PostalCode.MergeFrom(other.PostalCode);
      }
      _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: {
            string value = _single_street_codec.Read(input);
            if (street_ == null || value != "") {
              Street = value;
            }
            break;
          }
          case 18: {
            string value = _single_city_codec.Read(input);
            if (city_ == null || value != "") {
              City = value;
            }
            break;
          }
          case 26: {
            string value = _single_state_codec.Read(input);
            if (state_ == null || value != "") {
              State = value;
            }
            break;
          }
          case 34: {
            if (postalCode_ == null) {
              postalCode_ = new global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.PostalCode();
            }
            input.ReadMessage(postalCode_);
            break;
          }
        }
      }
    }

  }

  public sealed partial class Hotels : pb::IMessage<Hotels> {
    private static readonly pb::MessageParser<Hotels> _parser = new pb::MessageParser<Hotels>(() => new Hotels());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public static pb::MessageParser<Hotels> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.CassandraHotelSchemaReflection.Descriptor.MessageTypes[2]; }
    }

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

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

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public Hotels(Hotels other) : this() {
      HotelId = other.HotelId;
      Name = other.Name;
      Phone = other.Phone;
      Address = other.address_ != null ? other.Address.Clone() : null;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

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

    /// <summary>Field number for the "hotel_id" field.</summary>
    public const int HotelIdFieldNumber = 1;
    private static readonly pb::FieldCodec<string> _single_hotelId_codec = pb::FieldCodec.ForClassWrapper<string>(10);
    private string hotelId_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public string HotelId {
      get { return hotelId_; }
      set {
        hotelId_ = value;
      }
    }

    /// <summary>Field number for the "name" field.</summary>
    public const int NameFieldNumber = 2;
    private static readonly pb::FieldCodec<string> _single_name_codec = pb::FieldCodec.ForClassWrapper<string>(18);
    private string name_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public string Name {
      get { return name_; }
      set {
        name_ = value;
      }
    }

    /// <summary>Field number for the "phone" field.</summary>
    public const int PhoneFieldNumber = 3;
    private static readonly pb::FieldCodec<string> _single_phone_codec = pb::FieldCodec.ForClassWrapper<string>(26);
    private string phone_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public string Phone {
      get { return phone_; }
      set {
        phone_ = value;
      }
    }

    /// <summary>Field number for the "address" field.</summary>
    public const int AddressFieldNumber = 4;
    private global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.Address address_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.Address Address {
      get { return address_; }
      set {
        address_ = value;
      }
    }

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

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public bool Equals(Hotels other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (HotelId != other.HotelId) return false;
      if (Name != other.Name) return false;
      if (Phone != other.Phone) return false;
      if (!object.Equals(Address, other.Address)) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public override int GetHashCode() {
      int hash = 1;
      if (hotelId_ != null) hash ^= HotelId.GetHashCode();
      if (name_ != null) hash ^= Name.GetHashCode();
      if (phone_ != null) hash ^= Phone.GetHashCode();
      if (address_ != null) hash ^= Address.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 (hotelId_ != null) {
        _single_hotelId_codec.WriteTagAndValue(output, HotelId);
      }
      if (name_ != null) {
        _single_name_codec.WriteTagAndValue(output, Name);
      }
      if (phone_ != null) {
        _single_phone_codec.WriteTagAndValue(output, Phone);
      }
      if (address_ != null) {
        output.WriteRawTag(34);
        output.WriteMessage(Address);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public int CalculateSize() {
      int size = 0;
      if (hotelId_ != null) {
        size += _single_hotelId_codec.CalculateSizeWithTag(HotelId);
      }
      if (name_ != null) {
        size += _single_name_codec.CalculateSizeWithTag(Name);
      }
      if (phone_ != null) {
        size += _single_phone_codec.CalculateSizeWithTag(Phone);
      }
      if (address_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(Address);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public void MergeFrom(Hotels other) {
      if (other == null) {
        return;
      }
      if (other.hotelId_ != null) {
        if (hotelId_ == null || other.HotelId != "") {
          HotelId = other.HotelId;
        }
      }
      if (other.name_ != null) {
        if (name_ == null || other.Name != "") {
          Name = other.Name;
        }
      }
      if (other.phone_ != null) {
        if (phone_ == null || other.Phone != "") {
          Phone = other.Phone;
        }
      }
      if (other.address_ != null) {
        if (address_ == null) {
          address_ = new global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.Address();
        }
        Address.MergeFrom(other.Address);
      }
      _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: {
            string value = _single_hotelId_codec.Read(input);
            if (hotelId_ == null || value != "") {
              HotelId = value;
            }
            break;
          }
          case 18: {
            string value = _single_name_codec.Read(input);
            if (name_ == null || value != "") {
              Name = value;
            }
            break;
          }
          case 26: {
            string value = _single_phone_codec.Read(input);
            if (phone_ == null || value != "") {
              Phone = value;
            }
            break;
          }
          case 34: {
            if (address_ == null) {
              address_ = new global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.Address();
            }
            input.ReadMessage(address_);
            break;
          }
        }
      }
    }

  }

  public sealed partial class Available_Rooms_By_Hotel_Date : pb::IMessage<Available_Rooms_By_Hotel_Date> {
    private static readonly pb::MessageParser<Available_Rooms_By_Hotel_Date> _parser = new pb::MessageParser<Available_Rooms_By_Hotel_Date>(() => new Available_Rooms_By_Hotel_Date());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public static pb::MessageParser<Available_Rooms_By_Hotel_Date> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.CassandraHotelSchemaReflection.Descriptor.MessageTypes[3]; }
    }

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

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

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public Available_Rooms_By_Hotel_Date(Available_Rooms_By_Hotel_Date other) : this() {
      HotelId = other.HotelId;
      Date = other.Date;
      RoomNumber = other.RoomNumber;
      IsAvailable = other.IsAvailable;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

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

    /// <summary>Field number for the "hotel_id" field.</summary>
    public const int HotelIdFieldNumber = 1;
    private static readonly pb::FieldCodec<string> _single_hotelId_codec = pb::FieldCodec.ForClassWrapper<string>(10);
    private string hotelId_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public string HotelId {
      get { return hotelId_; }
      set {
        hotelId_ = value;
      }
    }

    /// <summary>Field number for the "date" field.</summary>
    public const int DateFieldNumber = 2;
    private static readonly pb::FieldCodec<long?> _single_date_codec = pb::FieldCodec.ForStructWrapper<long>(18);
    private long? date_;
    /// <summary>
    /// datetime
    /// </summary>
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public long? Date {
      get { return date_; }
      set {
        date_ = value;
      }
    }

    /// <summary>Field number for the "room_number" field.</summary>
    public const int RoomNumberFieldNumber = 3;
    private static readonly pb::FieldCodec<int?> _single_roomNumber_codec = pb::FieldCodec.ForStructWrapper<int>(26);
    private int? roomNumber_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public int? RoomNumber {
      get { return roomNumber_; }
      set {
        roomNumber_ = value;
      }
    }

    /// <summary>Field number for the "is_available" field.</summary>
    public const int IsAvailableFieldNumber = 4;
    private static readonly pb::FieldCodec<bool?> _single_isAvailable_codec = pb::FieldCodec.ForStructWrapper<bool>(34);
    private bool? isAvailable_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public bool? IsAvailable {
      get { return isAvailable_; }
      set {
        isAvailable_ = value;
      }
    }

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

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

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public override int GetHashCode() {
      int hash = 1;
      if (hotelId_ != null) hash ^= HotelId.GetHashCode();
      if (date_ != null) hash ^= Date.GetHashCode();
      if (roomNumber_ != null) hash ^= RoomNumber.GetHashCode();
      if (isAvailable_ != null) hash ^= IsAvailable.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 (hotelId_ != null) {
        _single_hotelId_codec.WriteTagAndValue(output, HotelId);
      }
      if (date_ != null) {
        _single_date_codec.WriteTagAndValue(output, Date);
      }
      if (roomNumber_ != null) {
        _single_roomNumber_codec.WriteTagAndValue(output, RoomNumber);
      }
      if (isAvailable_ != null) {
        _single_isAvailable_codec.WriteTagAndValue(output, IsAvailable);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public int CalculateSize() {
      int size = 0;
      if (hotelId_ != null) {
        size += _single_hotelId_codec.CalculateSizeWithTag(HotelId);
      }
      if (date_ != null) {
        size += _single_date_codec.CalculateSizeWithTag(Date);
      }
      if (roomNumber_ != null) {
        size += _single_roomNumber_codec.CalculateSizeWithTag(RoomNumber);
      }
      if (isAvailable_ != null) {
        size += _single_isAvailable_codec.CalculateSizeWithTag(IsAvailable);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public void MergeFrom(Available_Rooms_By_Hotel_Date other) {
      if (other == null) {
        return;
      }
      if (other.hotelId_ != null) {
        if (hotelId_ == null || other.HotelId != "") {
          HotelId = other.HotelId;
        }
      }
      if (other.date_ != null) {
        if (date_ == null || other.Date != 0L) {
          Date = other.Date;
        }
      }
      if (other.roomNumber_ != null) {
        if (roomNumber_ == null || other.RoomNumber != 0) {
          RoomNumber = other.RoomNumber;
        }
      }
      if (other.isAvailable_ != null) {
        if (isAvailable_ == null || other.IsAvailable != false) {
          IsAvailable = other.IsAvailable;
        }
      }
      _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: {
            string value = _single_hotelId_codec.Read(input);
            if (hotelId_ == null || value != "") {
              HotelId = value;
            }
            break;
          }
          case 18: {
            long? value = _single_date_codec.Read(input);
            if (date_ == null || value != 0L) {
              Date = value;
            }
            break;
          }
          case 26: {
            int? value = _single_roomNumber_codec.Read(input);
            if (roomNumber_ == null || value != 0) {
              RoomNumber = value;
            }
            break;
          }
          case 34: {
            bool? value = _single_isAvailable_codec.Read(input);
            if (isAvailable_ == null || value != false) {
              IsAvailable = value;
            }
            break;
          }
        }
      }
    }

  }

  public sealed partial class Guests : pb::IMessage<Guests> {
    private static readonly pb::MessageParser<Guests> _parser = new pb::MessageParser<Guests>(() => new Guests());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public static pb::MessageParser<Guests> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.CassandraHotelSchemaReflection.Descriptor.MessageTypes[4]; }
    }

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

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

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public Guests(Guests other) : this() {
      GuestId = other.GuestId;
      FirstName = other.FirstName;
      LastName = other.LastName;
      Title = other.Title;
      emails_ = other.emails_.Clone();
      phoneNumbers_ = other.phoneNumbers_.Clone();
      addresses_ = other.addresses_.Clone();
      ConfirmNumber = other.ConfirmNumber;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

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

    /// <summary>Field number for the "guest_id" field.</summary>
    public const int GuestIdFieldNumber = 1;
    private static readonly pb::FieldCodec<string> _single_guestId_codec = pb::FieldCodec.ForClassWrapper<string>(10);
    private string guestId_;
    /// <summary>
    /// guid 
    /// </summary>
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public string GuestId {
      get { return guestId_; }
      set {
        guestId_ = value;
      }
    }

    /// <summary>Field number for the "first_name" field.</summary>
    public const int FirstNameFieldNumber = 2;
    private static readonly pb::FieldCodec<string> _single_firstName_codec = pb::FieldCodec.ForClassWrapper<string>(18);
    private string firstName_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public string FirstName {
      get { return firstName_; }
      set {
        firstName_ = value;
      }
    }

    /// <summary>Field number for the "last_name" field.</summary>
    public const int LastNameFieldNumber = 3;
    private static readonly pb::FieldCodec<string> _single_lastName_codec = pb::FieldCodec.ForClassWrapper<string>(26);
    private string lastName_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public string LastName {
      get { return lastName_; }
      set {
        lastName_ = value;
      }
    }

    /// <summary>Field number for the "title" field.</summary>
    public const int TitleFieldNumber = 4;
    private static readonly pb::FieldCodec<string> _single_title_codec = pb::FieldCodec.ForClassWrapper<string>(34);
    private string title_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public string Title {
      get { return title_; }
      set {
        title_ = value;
      }
    }

    /// <summary>Field number for the "emails" field.</summary>
    public const int EmailsFieldNumber = 5;
    private static readonly pb::FieldCodec<string> _repeated_emails_codec
        = pb::FieldCodec.ForString(42);
    private readonly pbc::RepeatedField<string> emails_ = new pbc::RepeatedField<string>();
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public pbc::RepeatedField<string> Emails {
      get { return emails_; }
    }

    /// <summary>Field number for the "phone_numbers" field.</summary>
    public const int PhoneNumbersFieldNumber = 6;
    private static readonly pb::FieldCodec<string> _repeated_phoneNumbers_codec
        = pb::FieldCodec.ForString(50);
    private readonly pbc::RepeatedField<string> phoneNumbers_ = new pbc::RepeatedField<string>();
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public pbc::RepeatedField<string> PhoneNumbers {
      get { return phoneNumbers_; }
    }

    /// <summary>Field number for the "addresses" field.</summary>
    public const int AddressesFieldNumber = 7;
    private static readonly pbc::MapField<string, global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.Address>.Codec _map_addresses_codec
        = new pbc::MapField<string, global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.Address>.Codec(pb::FieldCodec.ForString(10), pb::FieldCodec.ForMessage(18, global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.Address.Parser), 58);
    private readonly pbc::MapField<string, global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.Address> addresses_ = new pbc::MapField<string, global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.Address>();
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public pbc::MapField<string, global::Microsoft.Azure.Cosmos.Serialization.HybridRow.Tests.Perf.CassandraHotel.Protobuf.Address> Addresses {
      get { return addresses_; }
    }

    /// <summary>Field number for the "confirm_number" field.</summary>
    public const int ConfirmNumberFieldNumber = 8;
    private static readonly pb::FieldCodec<string> _single_confirmNumber_codec = pb::FieldCodec.ForClassWrapper<string>(66);
    private string confirmNumber_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public string ConfirmNumber {
      get { return confirmNumber_; }
      set {
        confirmNumber_ = value;
      }
    }

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

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public bool Equals(Guests other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (GuestId != other.GuestId) return false;
      if (FirstName != other.FirstName) return false;
      if (LastName != other.LastName) return false;
      if (Title != other.Title) return false;
      if(!emails_.Equals(other.emails_)) return false;
      if(!phoneNumbers_.Equals(other.phoneNumbers_)) return false;
      if (!Addresses.Equals(other.Addresses)) return false;
      if (ConfirmNumber != other.ConfirmNumber) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public override int GetHashCode() {
      int hash = 1;
      if (guestId_ != null) hash ^= GuestId.GetHashCode();
      if (firstName_ != null) hash ^= FirstName.GetHashCode();
      if (lastName_ != null) hash ^= LastName.GetHashCode();
      if (title_ != null) hash ^= Title.GetHashCode();
      hash ^= emails_.GetHashCode();
      hash ^= phoneNumbers_.GetHashCode();
      hash ^= Addresses.GetHashCode();
      if (confirmNumber_ != null) hash ^= ConfirmNumber.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 (guestId_ != null) {
        _single_guestId_codec.WriteTagAndValue(output, GuestId);
      }
      if (firstName_ != null) {
        _single_firstName_codec.WriteTagAndValue(output, FirstName);
      }
      if (lastName_ != null) {
        _single_lastName_codec.WriteTagAndValue(output, LastName);
      }
      if (title_ != null) {
        _single_title_codec.WriteTagAndValue(output, Title);
      }
      emails_.WriteTo(output, _repeated_emails_codec);
      phoneNumbers_.WriteTo(output, _repeated_phoneNumbers_codec);
      addresses_.WriteTo(output, _map_addresses_codec);
      if (confirmNumber_ != null) {
        _single_confirmNumber_codec.WriteTagAndValue(output, ConfirmNumber);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public int CalculateSize() {
      int size = 0;
      if (guestId_ != null) {
        size += _single_guestId_codec.CalculateSizeWithTag(GuestId);
      }
      if (firstName_ != null) {
        size += _single_firstName_codec.CalculateSizeWithTag(FirstName);
      }
      if (lastName_ != null) {
        size += _single_lastName_codec.CalculateSizeWithTag(LastName);
      }
      if (title_ != null) {
        size += _single_title_codec.CalculateSizeWithTag(Title);
      }
      size += emails_.CalculateSize(_repeated_emails_codec);
      size += phoneNumbers_.CalculateSize(_repeated_phoneNumbers_codec);
      size += addresses_.CalculateSize(_map_addresses_codec);
      if (confirmNumber_ != null) {
        size += _single_confirmNumber_codec.CalculateSizeWithTag(ConfirmNumber);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    public void MergeFrom(Guests other) {
      if (other == null) {
        return;
      }
      if (other.guestId_ != null) {
        if (guestId_ == null || other.GuestId != "") {
          GuestId = other.GuestId;
        }
      }
      if (other.firstName_ != null) {
        if (firstName_ == null || other.FirstName != "") {
          FirstName = other.FirstName;
        }
      }
      if (other.lastName_ != null) {
        if (lastName_ == null || other.LastName != "") {
          LastName = other.LastName;
        }
      }
      if (other.title_ != null) {
        if (title_ == null || other.Title != "") {
          Title = other.Title;
        }
      }
      emails_.Add(other.emails_);
      phoneNumbers_.Add(other.phoneNumbers_);
      addresses_.Add(other.addresses_);
      if (other.confirmNumber_ != null) {
        if (confirmNumber_ == null || other.ConfirmNumber != "") {
          ConfirmNumber = other.ConfirmNumber;
        }
      }
      _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: {
            string value = _single_guestId_codec.Read(input);
            if (guestId_ == null || value != "") {
              GuestId = value;
            }
            break;
          }
          case 18: {
            string value = _single_firstName_codec.Read(input);
            if (firstName_ == null || value != "") {
              FirstName = value;
            }
            break;
          }
          case 26: {
            string value = _single_lastName_codec.Read(input);
            if (lastName_ == null || value != "") {
              LastName = value;
            }
            break;
          }
          case 34: {
            string value = _single_title_codec.Read(input);
            if (title_ == null || value != "") {
              Title = value;
            }
            break;
          }
          case 42: {
            emails_.AddEntriesFrom(input, _repeated_emails_codec);
            break;
          }
          case 50: {
            phoneNumbers_.AddEntriesFrom(input, _repeated_phoneNumbers_codec);
            break;
          }
          case 58: {
            addresses_.AddEntriesFrom(input, _map_addresses_codec);
            break;
          }
          case 66: {
            string value = _single_confirmNumber_codec.Read(input);
            if (confirmNumber_ == null || value != "") {
              ConfirmNumber = value;
            }
            break;
          }
        }
      }
    }

  }

  #endregion

}

#endregion Designer generated code
