| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484 | // <auto-generated>//     Generated by the protocol buffer compiler.  DO NOT EDIT!//     source: src/proto/grpc/testing/messages.proto// </auto-generated>#pragma warning disable 1591, 0612, 3021#region Designer generated codeusing pb = global::Google.Protobuf;using pbc = global::Google.Protobuf.Collections;using pbr = global::Google.Protobuf.Reflection;using scg = global::System.Collections.Generic;namespace Grpc.Testing {  /// <summary>Holder for reflection information generated from src/proto/grpc/testing/messages.proto</summary>  public static partial class MessagesReflection {    #region Descriptor    /// <summary>File descriptor for src/proto/grpc/testing/messages.proto</summary>    public static pbr::FileDescriptor Descriptor {      get { return descriptor; }    }    private static pbr::FileDescriptor descriptor;    static MessagesReflection() {      byte[] descriptorData = global::System.Convert.FromBase64String(          string.Concat(            "CiVzcmMvcHJvdG8vZ3JwYy90ZXN0aW5nL21lc3NhZ2VzLnByb3RvEgxncnBj",            "LnRlc3RpbmciGgoJQm9vbFZhbHVlEg0KBXZhbHVlGAEgASgIIkAKB1BheWxv",            "YWQSJwoEdHlwZRgBIAEoDjIZLmdycGMudGVzdGluZy5QYXlsb2FkVHlwZRIM",            "CgRib2R5GAIgASgMIisKCkVjaG9TdGF0dXMSDAoEY29kZRgBIAEoBRIPCgdt",            "ZXNzYWdlGAIgASgJIoYDCg1TaW1wbGVSZXF1ZXN0EjAKDXJlc3BvbnNlX3R5",            "cGUYASABKA4yGS5ncnBjLnRlc3RpbmcuUGF5bG9hZFR5cGUSFQoNcmVzcG9u",            "c2Vfc2l6ZRgCIAEoBRImCgdwYXlsb2FkGAMgASgLMhUuZ3JwYy50ZXN0aW5n",            "LlBheWxvYWQSFQoNZmlsbF91c2VybmFtZRgEIAEoCBIYChBmaWxsX29hdXRo",            "X3Njb3BlGAUgASgIEjQKE3Jlc3BvbnNlX2NvbXByZXNzZWQYBiABKAsyFy5n",            "cnBjLnRlc3RpbmcuQm9vbFZhbHVlEjEKD3Jlc3BvbnNlX3N0YXR1cxgHIAEo",            "CzIYLmdycGMudGVzdGluZy5FY2hvU3RhdHVzEjIKEWV4cGVjdF9jb21wcmVz",            "c2VkGAggASgLMhcuZ3JwYy50ZXN0aW5nLkJvb2xWYWx1ZRIWCg5maWxsX3Nl",            "cnZlcl9pZBgJIAEoCBIeChZmaWxsX2dycGNsYl9yb3V0ZV90eXBlGAogASgI",            "IqwBCg5TaW1wbGVSZXNwb25zZRImCgdwYXlsb2FkGAEgASgLMhUuZ3JwYy50",            "ZXN0aW5nLlBheWxvYWQSEAoIdXNlcm5hbWUYAiABKAkSEwoLb2F1dGhfc2Nv",            "cGUYAyABKAkSEQoJc2VydmVyX2lkGAQgASgJEjgKEWdycGNsYl9yb3V0ZV90",            "eXBlGAUgASgOMh0uZ3JwYy50ZXN0aW5nLkdycGNsYlJvdXRlVHlwZSJ3ChlT",            "dHJlYW1pbmdJbnB1dENhbGxSZXF1ZXN0EiYKB3BheWxvYWQYASABKAsyFS5n",            "cnBjLnRlc3RpbmcuUGF5bG9hZBIyChFleHBlY3RfY29tcHJlc3NlZBgCIAEo",            "CzIXLmdycGMudGVzdGluZy5Cb29sVmFsdWUiPQoaU3RyZWFtaW5nSW5wdXRD",            "YWxsUmVzcG9uc2USHwoXYWdncmVnYXRlZF9wYXlsb2FkX3NpemUYASABKAUi",            "ZAoSUmVzcG9uc2VQYXJhbWV0ZXJzEgwKBHNpemUYASABKAUSEwoLaW50ZXJ2",            "YWxfdXMYAiABKAUSKwoKY29tcHJlc3NlZBgDIAEoCzIXLmdycGMudGVzdGlu",            "Zy5Cb29sVmFsdWUi6AEKGlN0cmVhbWluZ091dHB1dENhbGxSZXF1ZXN0EjAK",            "DXJlc3BvbnNlX3R5cGUYASABKA4yGS5ncnBjLnRlc3RpbmcuUGF5bG9hZFR5",            "cGUSPQoTcmVzcG9uc2VfcGFyYW1ldGVycxgCIAMoCzIgLmdycGMudGVzdGlu",            "Zy5SZXNwb25zZVBhcmFtZXRlcnMSJgoHcGF5bG9hZBgDIAEoCzIVLmdycGMu",            "dGVzdGluZy5QYXlsb2FkEjEKD3Jlc3BvbnNlX3N0YXR1cxgHIAEoCzIYLmdy",            "cGMudGVzdGluZy5FY2hvU3RhdHVzIkUKG1N0cmVhbWluZ091dHB1dENhbGxS",            "ZXNwb25zZRImCgdwYXlsb2FkGAEgASgLMhUuZ3JwYy50ZXN0aW5nLlBheWxv",            "YWQiMwoPUmVjb25uZWN0UGFyYW1zEiAKGG1heF9yZWNvbm5lY3RfYmFja29m",            "Zl9tcxgBIAEoBSIzCg1SZWNvbm5lY3RJbmZvEg4KBnBhc3NlZBgBIAEoCBIS",            "CgpiYWNrb2ZmX21zGAIgAygFKh8KC1BheWxvYWRUeXBlEhAKDENPTVBSRVNT",            "QUJMRRAAKm8KD0dycGNsYlJvdXRlVHlwZRIdChlHUlBDTEJfUk9VVEVfVFlQ",            "RV9VTktOT1dOEAASHgoaR1JQQ0xCX1JPVVRFX1RZUEVfRkFMTEJBQ0sQARId",            "ChlHUlBDTEJfUk9VVEVfVFlQRV9CQUNLRU5EEAJiBnByb3RvMw=="));      descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,          new pbr::FileDescriptor[] { },          new pbr::GeneratedClrTypeInfo(new[] {typeof(global::Grpc.Testing.PayloadType), typeof(global::Grpc.Testing.GrpclbRouteType), }, new pbr::GeneratedClrTypeInfo[] {            new pbr::GeneratedClrTypeInfo(typeof(global::Grpc.Testing.BoolValue), global::Grpc.Testing.BoolValue.Parser, new[]{ "Value" }, null, null, null),            new pbr::GeneratedClrTypeInfo(typeof(global::Grpc.Testing.Payload), global::Grpc.Testing.Payload.Parser, new[]{ "Type", "Body" }, null, null, null),            new pbr::GeneratedClrTypeInfo(typeof(global::Grpc.Testing.EchoStatus), global::Grpc.Testing.EchoStatus.Parser, new[]{ "Code", "Message" }, null, null, null),            new pbr::GeneratedClrTypeInfo(typeof(global::Grpc.Testing.SimpleRequest), global::Grpc.Testing.SimpleRequest.Parser, new[]{ "ResponseType", "ResponseSize", "Payload", "FillUsername", "FillOauthScope", "ResponseCompressed", "ResponseStatus", "ExpectCompressed", "FillServerId", "FillGrpclbRouteType" }, null, null, null),            new pbr::GeneratedClrTypeInfo(typeof(global::Grpc.Testing.SimpleResponse), global::Grpc.Testing.SimpleResponse.Parser, new[]{ "Payload", "Username", "OauthScope", "ServerId", "GrpclbRouteType" }, null, null, null),            new pbr::GeneratedClrTypeInfo(typeof(global::Grpc.Testing.StreamingInputCallRequest), global::Grpc.Testing.StreamingInputCallRequest.Parser, new[]{ "Payload", "ExpectCompressed" }, null, null, null),            new pbr::GeneratedClrTypeInfo(typeof(global::Grpc.Testing.StreamingInputCallResponse), global::Grpc.Testing.StreamingInputCallResponse.Parser, new[]{ "AggregatedPayloadSize" }, null, null, null),            new pbr::GeneratedClrTypeInfo(typeof(global::Grpc.Testing.ResponseParameters), global::Grpc.Testing.ResponseParameters.Parser, new[]{ "Size", "IntervalUs", "Compressed" }, null, null, null),            new pbr::GeneratedClrTypeInfo(typeof(global::Grpc.Testing.StreamingOutputCallRequest), global::Grpc.Testing.StreamingOutputCallRequest.Parser, new[]{ "ResponseType", "ResponseParameters", "Payload", "ResponseStatus" }, null, null, null),            new pbr::GeneratedClrTypeInfo(typeof(global::Grpc.Testing.StreamingOutputCallResponse), global::Grpc.Testing.StreamingOutputCallResponse.Parser, new[]{ "Payload" }, null, null, null),            new pbr::GeneratedClrTypeInfo(typeof(global::Grpc.Testing.ReconnectParams), global::Grpc.Testing.ReconnectParams.Parser, new[]{ "MaxReconnectBackoffMs" }, null, null, null),            new pbr::GeneratedClrTypeInfo(typeof(global::Grpc.Testing.ReconnectInfo), global::Grpc.Testing.ReconnectInfo.Parser, new[]{ "Passed", "BackoffMs" }, null, null, null)          }));    }    #endregion  }  #region Enums  /// <summary>  /// The type of payload that should be returned.  /// </summary>  public enum PayloadType {    /// <summary>    /// Compressable text format.    /// </summary>    [pbr::OriginalName("COMPRESSABLE")] Compressable = 0,  }  /// <summary>  /// The type of route that a client took to reach a server w.r.t. gRPCLB.  /// The server must fill in "fallback" if it detects that the RPC reached  /// the server via the "gRPCLB fallback" path, and "backend" if it detects  /// that the RPC reached the server via "gRPCLB backend" path (i.e. if it got  /// the address of this server from the gRPCLB server BalanceLoad RPC). Exactly  /// how this detection is done is context and server dependant.  /// </summary>  public enum GrpclbRouteType {    /// <summary>    /// Server didn't detect the route that a client took to reach it.    /// </summary>    [pbr::OriginalName("GRPCLB_ROUTE_TYPE_UNKNOWN")] Unknown = 0,    /// <summary>    /// Indicates that a client reached a server via gRPCLB fallback.    /// </summary>    [pbr::OriginalName("GRPCLB_ROUTE_TYPE_FALLBACK")] Fallback = 1,    /// <summary>    /// Indicates that a client reached a server as a gRPCLB-given backend.    /// </summary>    [pbr::OriginalName("GRPCLB_ROUTE_TYPE_BACKEND")] Backend = 2,  }  #endregion  #region Messages  /// <summary>  /// TODO(dgq): Go back to using well-known types once  /// https://github.com/grpc/grpc/issues/6980 has been fixed.  /// import "google/protobuf/wrappers.proto";  /// </summary>  public sealed partial class BoolValue : pb::IMessage<BoolValue> {    private static readonly pb::MessageParser<BoolValue> _parser = new pb::MessageParser<BoolValue>(() => new BoolValue());    private pb::UnknownFieldSet _unknownFields;    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pb::MessageParser<BoolValue> Parser { get { return _parser; } }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pbr::MessageDescriptor Descriptor {      get { return global::Grpc.Testing.MessagesReflection.Descriptor.MessageTypes[0]; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    pbr::MessageDescriptor pb::IMessage.Descriptor {      get { return Descriptor; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public BoolValue() {      OnConstruction();    }    partial void OnConstruction();    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public BoolValue(BoolValue other) : this() {      value_ = other.value_;      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public BoolValue Clone() {      return new BoolValue(this);    }    /// <summary>Field number for the "value" field.</summary>    public const int ValueFieldNumber = 1;    private bool value_;    /// <summary>    /// The bool value.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public bool Value {      get { return value_; }      set {        value_ = value;      }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override bool Equals(object other) {      return Equals(other as BoolValue);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public bool Equals(BoolValue other) {      if (ReferenceEquals(other, null)) {        return false;      }      if (ReferenceEquals(other, this)) {        return true;      }      if (Value != other.Value) return false;      return Equals(_unknownFields, other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override int GetHashCode() {      int hash = 1;      if (Value != false) hash ^= Value.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 (Value != false) {        output.WriteRawTag(8);        output.WriteBool(Value);      }      if (_unknownFields != null) {        _unknownFields.WriteTo(output);      }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public int CalculateSize() {      int size = 0;      if (Value != false) {        size += 1 + 1;      }      if (_unknownFields != null) {        size += _unknownFields.CalculateSize();      }      return size;    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public void MergeFrom(BoolValue other) {      if (other == null) {        return;      }      if (other.Value != false) {        Value = other.Value;      }      _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: {            Value = input.ReadBool();            break;          }        }      }    }  }  /// <summary>  /// A block of data, to simply increase gRPC message size.  /// </summary>  public sealed partial class Payload : pb::IMessage<Payload> {    private static readonly pb::MessageParser<Payload> _parser = new pb::MessageParser<Payload>(() => new Payload());    private pb::UnknownFieldSet _unknownFields;    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pb::MessageParser<Payload> Parser { get { return _parser; } }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pbr::MessageDescriptor Descriptor {      get { return global::Grpc.Testing.MessagesReflection.Descriptor.MessageTypes[1]; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    pbr::MessageDescriptor pb::IMessage.Descriptor {      get { return Descriptor; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public Payload() {      OnConstruction();    }    partial void OnConstruction();    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public Payload(Payload other) : this() {      type_ = other.type_;      body_ = other.body_;      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public Payload Clone() {      return new Payload(this);    }    /// <summary>Field number for the "type" field.</summary>    public const int TypeFieldNumber = 1;    private global::Grpc.Testing.PayloadType type_ = 0;    /// <summary>    /// The type of data in body.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public global::Grpc.Testing.PayloadType Type {      get { return type_; }      set {        type_ = value;      }    }    /// <summary>Field number for the "body" field.</summary>    public const int BodyFieldNumber = 2;    private pb::ByteString body_ = pb::ByteString.Empty;    /// <summary>    /// Primary contents of payload.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public pb::ByteString Body {      get { return body_; }      set {        body_ = pb::ProtoPreconditions.CheckNotNull(value, "value");      }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override bool Equals(object other) {      return Equals(other as Payload);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public bool Equals(Payload other) {      if (ReferenceEquals(other, null)) {        return false;      }      if (ReferenceEquals(other, this)) {        return true;      }      if (Type != other.Type) return false;      if (Body != other.Body) return false;      return Equals(_unknownFields, other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override int GetHashCode() {      int hash = 1;      if (Type != 0) hash ^= Type.GetHashCode();      if (Body.Length != 0) hash ^= Body.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 (Type != 0) {        output.WriteRawTag(8);        output.WriteEnum((int) Type);      }      if (Body.Length != 0) {        output.WriteRawTag(18);        output.WriteBytes(Body);      }      if (_unknownFields != null) {        _unknownFields.WriteTo(output);      }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public int CalculateSize() {      int size = 0;      if (Type != 0) {        size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) Type);      }      if (Body.Length != 0) {        size += 1 + pb::CodedOutputStream.ComputeBytesSize(Body);      }      if (_unknownFields != null) {        size += _unknownFields.CalculateSize();      }      return size;    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public void MergeFrom(Payload other) {      if (other == null) {        return;      }      if (other.Type != 0) {        Type = other.Type;      }      if (other.Body.Length != 0) {        Body = other.Body;      }      _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: {            Type = (global::Grpc.Testing.PayloadType) input.ReadEnum();            break;          }          case 18: {            Body = input.ReadBytes();            break;          }        }      }    }  }  /// <summary>  /// A protobuf representation for grpc status. This is used by test  /// clients to specify a status that the server should attempt to return.  /// </summary>  public sealed partial class EchoStatus : pb::IMessage<EchoStatus> {    private static readonly pb::MessageParser<EchoStatus> _parser = new pb::MessageParser<EchoStatus>(() => new EchoStatus());    private pb::UnknownFieldSet _unknownFields;    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pb::MessageParser<EchoStatus> Parser { get { return _parser; } }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pbr::MessageDescriptor Descriptor {      get { return global::Grpc.Testing.MessagesReflection.Descriptor.MessageTypes[2]; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    pbr::MessageDescriptor pb::IMessage.Descriptor {      get { return Descriptor; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public EchoStatus() {      OnConstruction();    }    partial void OnConstruction();    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public EchoStatus(EchoStatus other) : this() {      code_ = other.code_;      message_ = other.message_;      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public EchoStatus Clone() {      return new EchoStatus(this);    }    /// <summary>Field number for the "code" field.</summary>    public const int CodeFieldNumber = 1;    private int code_;    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public int Code {      get { return code_; }      set {        code_ = value;      }    }    /// <summary>Field number for the "message" field.</summary>    public const int MessageFieldNumber = 2;    private string message_ = "";    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public string Message {      get { return message_; }      set {        message_ = pb::ProtoPreconditions.CheckNotNull(value, "value");      }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override bool Equals(object other) {      return Equals(other as EchoStatus);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public bool Equals(EchoStatus other) {      if (ReferenceEquals(other, null)) {        return false;      }      if (ReferenceEquals(other, this)) {        return true;      }      if (Code != other.Code) return false;      if (Message != other.Message) return false;      return Equals(_unknownFields, other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override int GetHashCode() {      int hash = 1;      if (Code != 0) hash ^= Code.GetHashCode();      if (Message.Length != 0) hash ^= Message.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 (Code != 0) {        output.WriteRawTag(8);        output.WriteInt32(Code);      }      if (Message.Length != 0) {        output.WriteRawTag(18);        output.WriteString(Message);      }      if (_unknownFields != null) {        _unknownFields.WriteTo(output);      }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public int CalculateSize() {      int size = 0;      if (Code != 0) {        size += 1 + pb::CodedOutputStream.ComputeInt32Size(Code);      }      if (Message.Length != 0) {        size += 1 + pb::CodedOutputStream.ComputeStringSize(Message);      }      if (_unknownFields != null) {        size += _unknownFields.CalculateSize();      }      return size;    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public void MergeFrom(EchoStatus other) {      if (other == null) {        return;      }      if (other.Code != 0) {        Code = other.Code;      }      if (other.Message.Length != 0) {        Message = other.Message;      }      _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: {            Code = input.ReadInt32();            break;          }          case 18: {            Message = input.ReadString();            break;          }        }      }    }  }  /// <summary>  /// Unary request.  /// </summary>  public sealed partial class SimpleRequest : pb::IMessage<SimpleRequest> {    private static readonly pb::MessageParser<SimpleRequest> _parser = new pb::MessageParser<SimpleRequest>(() => new SimpleRequest());    private pb::UnknownFieldSet _unknownFields;    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pb::MessageParser<SimpleRequest> Parser { get { return _parser; } }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pbr::MessageDescriptor Descriptor {      get { return global::Grpc.Testing.MessagesReflection.Descriptor.MessageTypes[3]; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    pbr::MessageDescriptor pb::IMessage.Descriptor {      get { return Descriptor; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public SimpleRequest() {      OnConstruction();    }    partial void OnConstruction();    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public SimpleRequest(SimpleRequest other) : this() {      responseType_ = other.responseType_;      responseSize_ = other.responseSize_;      payload_ = other.payload_ != null ? other.payload_.Clone() : null;      fillUsername_ = other.fillUsername_;      fillOauthScope_ = other.fillOauthScope_;      responseCompressed_ = other.responseCompressed_ != null ? other.responseCompressed_.Clone() : null;      responseStatus_ = other.responseStatus_ != null ? other.responseStatus_.Clone() : null;      expectCompressed_ = other.expectCompressed_ != null ? other.expectCompressed_.Clone() : null;      fillServerId_ = other.fillServerId_;      fillGrpclbRouteType_ = other.fillGrpclbRouteType_;      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public SimpleRequest Clone() {      return new SimpleRequest(this);    }    /// <summary>Field number for the "response_type" field.</summary>    public const int ResponseTypeFieldNumber = 1;    private global::Grpc.Testing.PayloadType responseType_ = 0;    /// <summary>    /// Desired payload type in the response from the server.    /// If response_type is RANDOM, server randomly chooses one from other formats.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public global::Grpc.Testing.PayloadType ResponseType {      get { return responseType_; }      set {        responseType_ = value;      }    }    /// <summary>Field number for the "response_size" field.</summary>    public const int ResponseSizeFieldNumber = 2;    private int responseSize_;    /// <summary>    /// Desired payload size in the response from the server.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public int ResponseSize {      get { return responseSize_; }      set {        responseSize_ = value;      }    }    /// <summary>Field number for the "payload" field.</summary>    public const int PayloadFieldNumber = 3;    private global::Grpc.Testing.Payload payload_;    /// <summary>    /// Optional input payload sent along with the request.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public global::Grpc.Testing.Payload Payload {      get { return payload_; }      set {        payload_ = value;      }    }    /// <summary>Field number for the "fill_username" field.</summary>    public const int FillUsernameFieldNumber = 4;    private bool fillUsername_;    /// <summary>    /// Whether SimpleResponse should include username.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public bool FillUsername {      get { return fillUsername_; }      set {        fillUsername_ = value;      }    }    /// <summary>Field number for the "fill_oauth_scope" field.</summary>    public const int FillOauthScopeFieldNumber = 5;    private bool fillOauthScope_;    /// <summary>    /// Whether SimpleResponse should include OAuth scope.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public bool FillOauthScope {      get { return fillOauthScope_; }      set {        fillOauthScope_ = value;      }    }    /// <summary>Field number for the "response_compressed" field.</summary>    public const int ResponseCompressedFieldNumber = 6;    private global::Grpc.Testing.BoolValue responseCompressed_;    /// <summary>    /// Whether to request the server to compress the response. This field is    /// "nullable" in order to interoperate seamlessly with clients not able to    /// implement the full compression tests by introspecting the call to verify    /// the response's compression status.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public global::Grpc.Testing.BoolValue ResponseCompressed {      get { return responseCompressed_; }      set {        responseCompressed_ = value;      }    }    /// <summary>Field number for the "response_status" field.</summary>    public const int ResponseStatusFieldNumber = 7;    private global::Grpc.Testing.EchoStatus responseStatus_;    /// <summary>    /// Whether server should return a given status    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public global::Grpc.Testing.EchoStatus ResponseStatus {      get { return responseStatus_; }      set {        responseStatus_ = value;      }    }    /// <summary>Field number for the "expect_compressed" field.</summary>    public const int ExpectCompressedFieldNumber = 8;    private global::Grpc.Testing.BoolValue expectCompressed_;    /// <summary>    /// Whether the server should expect this request to be compressed.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public global::Grpc.Testing.BoolValue ExpectCompressed {      get { return expectCompressed_; }      set {        expectCompressed_ = value;      }    }    /// <summary>Field number for the "fill_server_id" field.</summary>    public const int FillServerIdFieldNumber = 9;    private bool fillServerId_;    /// <summary>    /// Whether SimpleResponse should include server_id.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public bool FillServerId {      get { return fillServerId_; }      set {        fillServerId_ = value;      }    }    /// <summary>Field number for the "fill_grpclb_route_type" field.</summary>    public const int FillGrpclbRouteTypeFieldNumber = 10;    private bool fillGrpclbRouteType_;    /// <summary>    /// Whether SimpleResponse should include grpclb_route_type.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public bool FillGrpclbRouteType {      get { return fillGrpclbRouteType_; }      set {        fillGrpclbRouteType_ = value;      }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override bool Equals(object other) {      return Equals(other as SimpleRequest);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public bool Equals(SimpleRequest other) {      if (ReferenceEquals(other, null)) {        return false;      }      if (ReferenceEquals(other, this)) {        return true;      }      if (ResponseType != other.ResponseType) return false;      if (ResponseSize != other.ResponseSize) return false;      if (!object.Equals(Payload, other.Payload)) return false;      if (FillUsername != other.FillUsername) return false;      if (FillOauthScope != other.FillOauthScope) return false;      if (!object.Equals(ResponseCompressed, other.ResponseCompressed)) return false;      if (!object.Equals(ResponseStatus, other.ResponseStatus)) return false;      if (!object.Equals(ExpectCompressed, other.ExpectCompressed)) return false;      if (FillServerId != other.FillServerId) return false;      if (FillGrpclbRouteType != other.FillGrpclbRouteType) return false;      return Equals(_unknownFields, other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override int GetHashCode() {      int hash = 1;      if (ResponseType != 0) hash ^= ResponseType.GetHashCode();      if (ResponseSize != 0) hash ^= ResponseSize.GetHashCode();      if (payload_ != null) hash ^= Payload.GetHashCode();      if (FillUsername != false) hash ^= FillUsername.GetHashCode();      if (FillOauthScope != false) hash ^= FillOauthScope.GetHashCode();      if (responseCompressed_ != null) hash ^= ResponseCompressed.GetHashCode();      if (responseStatus_ != null) hash ^= ResponseStatus.GetHashCode();      if (expectCompressed_ != null) hash ^= ExpectCompressed.GetHashCode();      if (FillServerId != false) hash ^= FillServerId.GetHashCode();      if (FillGrpclbRouteType != false) hash ^= FillGrpclbRouteType.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 (ResponseType != 0) {        output.WriteRawTag(8);        output.WriteEnum((int) ResponseType);      }      if (ResponseSize != 0) {        output.WriteRawTag(16);        output.WriteInt32(ResponseSize);      }      if (payload_ != null) {        output.WriteRawTag(26);        output.WriteMessage(Payload);      }      if (FillUsername != false) {        output.WriteRawTag(32);        output.WriteBool(FillUsername);      }      if (FillOauthScope != false) {        output.WriteRawTag(40);        output.WriteBool(FillOauthScope);      }      if (responseCompressed_ != null) {        output.WriteRawTag(50);        output.WriteMessage(ResponseCompressed);      }      if (responseStatus_ != null) {        output.WriteRawTag(58);        output.WriteMessage(ResponseStatus);      }      if (expectCompressed_ != null) {        output.WriteRawTag(66);        output.WriteMessage(ExpectCompressed);      }      if (FillServerId != false) {        output.WriteRawTag(72);        output.WriteBool(FillServerId);      }      if (FillGrpclbRouteType != false) {        output.WriteRawTag(80);        output.WriteBool(FillGrpclbRouteType);      }      if (_unknownFields != null) {        _unknownFields.WriteTo(output);      }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public int CalculateSize() {      int size = 0;      if (ResponseType != 0) {        size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) ResponseType);      }      if (ResponseSize != 0) {        size += 1 + pb::CodedOutputStream.ComputeInt32Size(ResponseSize);      }      if (payload_ != null) {        size += 1 + pb::CodedOutputStream.ComputeMessageSize(Payload);      }      if (FillUsername != false) {        size += 1 + 1;      }      if (FillOauthScope != false) {        size += 1 + 1;      }      if (responseCompressed_ != null) {        size += 1 + pb::CodedOutputStream.ComputeMessageSize(ResponseCompressed);      }      if (responseStatus_ != null) {        size += 1 + pb::CodedOutputStream.ComputeMessageSize(ResponseStatus);      }      if (expectCompressed_ != null) {        size += 1 + pb::CodedOutputStream.ComputeMessageSize(ExpectCompressed);      }      if (FillServerId != false) {        size += 1 + 1;      }      if (FillGrpclbRouteType != false) {        size += 1 + 1;      }      if (_unknownFields != null) {        size += _unknownFields.CalculateSize();      }      return size;    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public void MergeFrom(SimpleRequest other) {      if (other == null) {        return;      }      if (other.ResponseType != 0) {        ResponseType = other.ResponseType;      }      if (other.ResponseSize != 0) {        ResponseSize = other.ResponseSize;      }      if (other.payload_ != null) {        if (payload_ == null) {          Payload = new global::Grpc.Testing.Payload();        }        Payload.MergeFrom(other.Payload);      }      if (other.FillUsername != false) {        FillUsername = other.FillUsername;      }      if (other.FillOauthScope != false) {        FillOauthScope = other.FillOauthScope;      }      if (other.responseCompressed_ != null) {        if (responseCompressed_ == null) {          ResponseCompressed = new global::Grpc.Testing.BoolValue();        }        ResponseCompressed.MergeFrom(other.ResponseCompressed);      }      if (other.responseStatus_ != null) {        if (responseStatus_ == null) {          ResponseStatus = new global::Grpc.Testing.EchoStatus();        }        ResponseStatus.MergeFrom(other.ResponseStatus);      }      if (other.expectCompressed_ != null) {        if (expectCompressed_ == null) {          ExpectCompressed = new global::Grpc.Testing.BoolValue();        }        ExpectCompressed.MergeFrom(other.ExpectCompressed);      }      if (other.FillServerId != false) {        FillServerId = other.FillServerId;      }      if (other.FillGrpclbRouteType != false) {        FillGrpclbRouteType = other.FillGrpclbRouteType;      }      _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: {            ResponseType = (global::Grpc.Testing.PayloadType) input.ReadEnum();            break;          }          case 16: {            ResponseSize = input.ReadInt32();            break;          }          case 26: {            if (payload_ == null) {              Payload = new global::Grpc.Testing.Payload();            }            input.ReadMessage(Payload);            break;          }          case 32: {            FillUsername = input.ReadBool();            break;          }          case 40: {            FillOauthScope = input.ReadBool();            break;          }          case 50: {            if (responseCompressed_ == null) {              ResponseCompressed = new global::Grpc.Testing.BoolValue();            }            input.ReadMessage(ResponseCompressed);            break;          }          case 58: {            if (responseStatus_ == null) {              ResponseStatus = new global::Grpc.Testing.EchoStatus();            }            input.ReadMessage(ResponseStatus);            break;          }          case 66: {            if (expectCompressed_ == null) {              ExpectCompressed = new global::Grpc.Testing.BoolValue();            }            input.ReadMessage(ExpectCompressed);            break;          }          case 72: {            FillServerId = input.ReadBool();            break;          }          case 80: {            FillGrpclbRouteType = input.ReadBool();            break;          }        }      }    }  }  /// <summary>  /// Unary response, as configured by the request.  /// </summary>  public sealed partial class SimpleResponse : pb::IMessage<SimpleResponse> {    private static readonly pb::MessageParser<SimpleResponse> _parser = new pb::MessageParser<SimpleResponse>(() => new SimpleResponse());    private pb::UnknownFieldSet _unknownFields;    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pb::MessageParser<SimpleResponse> Parser { get { return _parser; } }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pbr::MessageDescriptor Descriptor {      get { return global::Grpc.Testing.MessagesReflection.Descriptor.MessageTypes[4]; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    pbr::MessageDescriptor pb::IMessage.Descriptor {      get { return Descriptor; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public SimpleResponse() {      OnConstruction();    }    partial void OnConstruction();    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public SimpleResponse(SimpleResponse other) : this() {      payload_ = other.payload_ != null ? other.payload_.Clone() : null;      username_ = other.username_;      oauthScope_ = other.oauthScope_;      serverId_ = other.serverId_;      grpclbRouteType_ = other.grpclbRouteType_;      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public SimpleResponse Clone() {      return new SimpleResponse(this);    }    /// <summary>Field number for the "payload" field.</summary>    public const int PayloadFieldNumber = 1;    private global::Grpc.Testing.Payload payload_;    /// <summary>    /// Payload to increase message size.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public global::Grpc.Testing.Payload Payload {      get { return payload_; }      set {        payload_ = value;      }    }    /// <summary>Field number for the "username" field.</summary>    public const int UsernameFieldNumber = 2;    private string username_ = "";    /// <summary>    /// The user the request came from, for verifying authentication was    /// successful when the client expected it.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public string Username {      get { return username_; }      set {        username_ = pb::ProtoPreconditions.CheckNotNull(value, "value");      }    }    /// <summary>Field number for the "oauth_scope" field.</summary>    public const int OauthScopeFieldNumber = 3;    private string oauthScope_ = "";    /// <summary>    /// OAuth scope.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public string OauthScope {      get { return oauthScope_; }      set {        oauthScope_ = pb::ProtoPreconditions.CheckNotNull(value, "value");      }    }    /// <summary>Field number for the "server_id" field.</summary>    public const int ServerIdFieldNumber = 4;    private string serverId_ = "";    /// <summary>    /// Server ID. This must be unique among different server instances,    /// but the same across all RPC's made to a particular server instance.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public string ServerId {      get { return serverId_; }      set {        serverId_ = pb::ProtoPreconditions.CheckNotNull(value, "value");      }    }    /// <summary>Field number for the "grpclb_route_type" field.</summary>    public const int GrpclbRouteTypeFieldNumber = 5;    private global::Grpc.Testing.GrpclbRouteType grpclbRouteType_ = 0;    /// <summary>    /// gRPCLB Path.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public global::Grpc.Testing.GrpclbRouteType GrpclbRouteType {      get { return grpclbRouteType_; }      set {        grpclbRouteType_ = value;      }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override bool Equals(object other) {      return Equals(other as SimpleResponse);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public bool Equals(SimpleResponse other) {      if (ReferenceEquals(other, null)) {        return false;      }      if (ReferenceEquals(other, this)) {        return true;      }      if (!object.Equals(Payload, other.Payload)) return false;      if (Username != other.Username) return false;      if (OauthScope != other.OauthScope) return false;      if (ServerId != other.ServerId) return false;      if (GrpclbRouteType != other.GrpclbRouteType) return false;      return Equals(_unknownFields, other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override int GetHashCode() {      int hash = 1;      if (payload_ != null) hash ^= Payload.GetHashCode();      if (Username.Length != 0) hash ^= Username.GetHashCode();      if (OauthScope.Length != 0) hash ^= OauthScope.GetHashCode();      if (ServerId.Length != 0) hash ^= ServerId.GetHashCode();      if (GrpclbRouteType != 0) hash ^= GrpclbRouteType.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 (payload_ != null) {        output.WriteRawTag(10);        output.WriteMessage(Payload);      }      if (Username.Length != 0) {        output.WriteRawTag(18);        output.WriteString(Username);      }      if (OauthScope.Length != 0) {        output.WriteRawTag(26);        output.WriteString(OauthScope);      }      if (ServerId.Length != 0) {        output.WriteRawTag(34);        output.WriteString(ServerId);      }      if (GrpclbRouteType != 0) {        output.WriteRawTag(40);        output.WriteEnum((int) GrpclbRouteType);      }      if (_unknownFields != null) {        _unknownFields.WriteTo(output);      }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public int CalculateSize() {      int size = 0;      if (payload_ != null) {        size += 1 + pb::CodedOutputStream.ComputeMessageSize(Payload);      }      if (Username.Length != 0) {        size += 1 + pb::CodedOutputStream.ComputeStringSize(Username);      }      if (OauthScope.Length != 0) {        size += 1 + pb::CodedOutputStream.ComputeStringSize(OauthScope);      }      if (ServerId.Length != 0) {        size += 1 + pb::CodedOutputStream.ComputeStringSize(ServerId);      }      if (GrpclbRouteType != 0) {        size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) GrpclbRouteType);      }      if (_unknownFields != null) {        size += _unknownFields.CalculateSize();      }      return size;    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public void MergeFrom(SimpleResponse other) {      if (other == null) {        return;      }      if (other.payload_ != null) {        if (payload_ == null) {          Payload = new global::Grpc.Testing.Payload();        }        Payload.MergeFrom(other.Payload);      }      if (other.Username.Length != 0) {        Username = other.Username;      }      if (other.OauthScope.Length != 0) {        OauthScope = other.OauthScope;      }      if (other.ServerId.Length != 0) {        ServerId = other.ServerId;      }      if (other.GrpclbRouteType != 0) {        GrpclbRouteType = other.GrpclbRouteType;      }      _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: {            if (payload_ == null) {              Payload = new global::Grpc.Testing.Payload();            }            input.ReadMessage(Payload);            break;          }          case 18: {            Username = input.ReadString();            break;          }          case 26: {            OauthScope = input.ReadString();            break;          }          case 34: {            ServerId = input.ReadString();            break;          }          case 40: {            GrpclbRouteType = (global::Grpc.Testing.GrpclbRouteType) input.ReadEnum();            break;          }        }      }    }  }  /// <summary>  /// Client-streaming request.  /// </summary>  public sealed partial class StreamingInputCallRequest : pb::IMessage<StreamingInputCallRequest> {    private static readonly pb::MessageParser<StreamingInputCallRequest> _parser = new pb::MessageParser<StreamingInputCallRequest>(() => new StreamingInputCallRequest());    private pb::UnknownFieldSet _unknownFields;    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pb::MessageParser<StreamingInputCallRequest> Parser { get { return _parser; } }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pbr::MessageDescriptor Descriptor {      get { return global::Grpc.Testing.MessagesReflection.Descriptor.MessageTypes[5]; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    pbr::MessageDescriptor pb::IMessage.Descriptor {      get { return Descriptor; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public StreamingInputCallRequest() {      OnConstruction();    }    partial void OnConstruction();    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public StreamingInputCallRequest(StreamingInputCallRequest other) : this() {      payload_ = other.payload_ != null ? other.payload_.Clone() : null;      expectCompressed_ = other.expectCompressed_ != null ? other.expectCompressed_.Clone() : null;      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public StreamingInputCallRequest Clone() {      return new StreamingInputCallRequest(this);    }    /// <summary>Field number for the "payload" field.</summary>    public const int PayloadFieldNumber = 1;    private global::Grpc.Testing.Payload payload_;    /// <summary>    /// Optional input payload sent along with the request.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public global::Grpc.Testing.Payload Payload {      get { return payload_; }      set {        payload_ = value;      }    }    /// <summary>Field number for the "expect_compressed" field.</summary>    public const int ExpectCompressedFieldNumber = 2;    private global::Grpc.Testing.BoolValue expectCompressed_;    /// <summary>    /// Whether the server should expect this request to be compressed. This field    /// is "nullable" in order to interoperate seamlessly with servers not able to    /// implement the full compression tests by introspecting the call to verify    /// the request's compression status.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public global::Grpc.Testing.BoolValue ExpectCompressed {      get { return expectCompressed_; }      set {        expectCompressed_ = value;      }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override bool Equals(object other) {      return Equals(other as StreamingInputCallRequest);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public bool Equals(StreamingInputCallRequest other) {      if (ReferenceEquals(other, null)) {        return false;      }      if (ReferenceEquals(other, this)) {        return true;      }      if (!object.Equals(Payload, other.Payload)) return false;      if (!object.Equals(ExpectCompressed, other.ExpectCompressed)) return false;      return Equals(_unknownFields, other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override int GetHashCode() {      int hash = 1;      if (payload_ != null) hash ^= Payload.GetHashCode();      if (expectCompressed_ != null) hash ^= ExpectCompressed.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 (payload_ != null) {        output.WriteRawTag(10);        output.WriteMessage(Payload);      }      if (expectCompressed_ != null) {        output.WriteRawTag(18);        output.WriteMessage(ExpectCompressed);      }      if (_unknownFields != null) {        _unknownFields.WriteTo(output);      }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public int CalculateSize() {      int size = 0;      if (payload_ != null) {        size += 1 + pb::CodedOutputStream.ComputeMessageSize(Payload);      }      if (expectCompressed_ != null) {        size += 1 + pb::CodedOutputStream.ComputeMessageSize(ExpectCompressed);      }      if (_unknownFields != null) {        size += _unknownFields.CalculateSize();      }      return size;    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public void MergeFrom(StreamingInputCallRequest other) {      if (other == null) {        return;      }      if (other.payload_ != null) {        if (payload_ == null) {          Payload = new global::Grpc.Testing.Payload();        }        Payload.MergeFrom(other.Payload);      }      if (other.expectCompressed_ != null) {        if (expectCompressed_ == null) {          ExpectCompressed = new global::Grpc.Testing.BoolValue();        }        ExpectCompressed.MergeFrom(other.ExpectCompressed);      }      _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: {            if (payload_ == null) {              Payload = new global::Grpc.Testing.Payload();            }            input.ReadMessage(Payload);            break;          }          case 18: {            if (expectCompressed_ == null) {              ExpectCompressed = new global::Grpc.Testing.BoolValue();            }            input.ReadMessage(ExpectCompressed);            break;          }        }      }    }  }  /// <summary>  /// Client-streaming response.  /// </summary>  public sealed partial class StreamingInputCallResponse : pb::IMessage<StreamingInputCallResponse> {    private static readonly pb::MessageParser<StreamingInputCallResponse> _parser = new pb::MessageParser<StreamingInputCallResponse>(() => new StreamingInputCallResponse());    private pb::UnknownFieldSet _unknownFields;    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pb::MessageParser<StreamingInputCallResponse> Parser { get { return _parser; } }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pbr::MessageDescriptor Descriptor {      get { return global::Grpc.Testing.MessagesReflection.Descriptor.MessageTypes[6]; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    pbr::MessageDescriptor pb::IMessage.Descriptor {      get { return Descriptor; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public StreamingInputCallResponse() {      OnConstruction();    }    partial void OnConstruction();    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public StreamingInputCallResponse(StreamingInputCallResponse other) : this() {      aggregatedPayloadSize_ = other.aggregatedPayloadSize_;      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public StreamingInputCallResponse Clone() {      return new StreamingInputCallResponse(this);    }    /// <summary>Field number for the "aggregated_payload_size" field.</summary>    public const int AggregatedPayloadSizeFieldNumber = 1;    private int aggregatedPayloadSize_;    /// <summary>    /// Aggregated size of payloads received from the client.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public int AggregatedPayloadSize {      get { return aggregatedPayloadSize_; }      set {        aggregatedPayloadSize_ = value;      }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override bool Equals(object other) {      return Equals(other as StreamingInputCallResponse);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public bool Equals(StreamingInputCallResponse other) {      if (ReferenceEquals(other, null)) {        return false;      }      if (ReferenceEquals(other, this)) {        return true;      }      if (AggregatedPayloadSize != other.AggregatedPayloadSize) return false;      return Equals(_unknownFields, other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override int GetHashCode() {      int hash = 1;      if (AggregatedPayloadSize != 0) hash ^= AggregatedPayloadSize.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 (AggregatedPayloadSize != 0) {        output.WriteRawTag(8);        output.WriteInt32(AggregatedPayloadSize);      }      if (_unknownFields != null) {        _unknownFields.WriteTo(output);      }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public int CalculateSize() {      int size = 0;      if (AggregatedPayloadSize != 0) {        size += 1 + pb::CodedOutputStream.ComputeInt32Size(AggregatedPayloadSize);      }      if (_unknownFields != null) {        size += _unknownFields.CalculateSize();      }      return size;    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public void MergeFrom(StreamingInputCallResponse other) {      if (other == null) {        return;      }      if (other.AggregatedPayloadSize != 0) {        AggregatedPayloadSize = other.AggregatedPayloadSize;      }      _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: {            AggregatedPayloadSize = input.ReadInt32();            break;          }        }      }    }  }  /// <summary>  /// Configuration for a particular response.  /// </summary>  public sealed partial class ResponseParameters : pb::IMessage<ResponseParameters> {    private static readonly pb::MessageParser<ResponseParameters> _parser = new pb::MessageParser<ResponseParameters>(() => new ResponseParameters());    private pb::UnknownFieldSet _unknownFields;    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pb::MessageParser<ResponseParameters> Parser { get { return _parser; } }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pbr::MessageDescriptor Descriptor {      get { return global::Grpc.Testing.MessagesReflection.Descriptor.MessageTypes[7]; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    pbr::MessageDescriptor pb::IMessage.Descriptor {      get { return Descriptor; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public ResponseParameters() {      OnConstruction();    }    partial void OnConstruction();    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public ResponseParameters(ResponseParameters other) : this() {      size_ = other.size_;      intervalUs_ = other.intervalUs_;      compressed_ = other.compressed_ != null ? other.compressed_.Clone() : null;      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public ResponseParameters Clone() {      return new ResponseParameters(this);    }    /// <summary>Field number for the "size" field.</summary>    public const int SizeFieldNumber = 1;    private int size_;    /// <summary>    /// Desired payload sizes in responses from the server.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public int Size {      get { return size_; }      set {        size_ = value;      }    }    /// <summary>Field number for the "interval_us" field.</summary>    public const int IntervalUsFieldNumber = 2;    private int intervalUs_;    /// <summary>    /// Desired interval between consecutive responses in the response stream in    /// microseconds.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public int IntervalUs {      get { return intervalUs_; }      set {        intervalUs_ = value;      }    }    /// <summary>Field number for the "compressed" field.</summary>    public const int CompressedFieldNumber = 3;    private global::Grpc.Testing.BoolValue compressed_;    /// <summary>    /// Whether to request the server to compress the response. This field is    /// "nullable" in order to interoperate seamlessly with clients not able to    /// implement the full compression tests by introspecting the call to verify    /// the response's compression status.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public global::Grpc.Testing.BoolValue Compressed {      get { return compressed_; }      set {        compressed_ = value;      }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override bool Equals(object other) {      return Equals(other as ResponseParameters);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public bool Equals(ResponseParameters other) {      if (ReferenceEquals(other, null)) {        return false;      }      if (ReferenceEquals(other, this)) {        return true;      }      if (Size != other.Size) return false;      if (IntervalUs != other.IntervalUs) return false;      if (!object.Equals(Compressed, other.Compressed)) return false;      return Equals(_unknownFields, other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override int GetHashCode() {      int hash = 1;      if (Size != 0) hash ^= Size.GetHashCode();      if (IntervalUs != 0) hash ^= IntervalUs.GetHashCode();      if (compressed_ != null) hash ^= Compressed.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 (Size != 0) {        output.WriteRawTag(8);        output.WriteInt32(Size);      }      if (IntervalUs != 0) {        output.WriteRawTag(16);        output.WriteInt32(IntervalUs);      }      if (compressed_ != null) {        output.WriteRawTag(26);        output.WriteMessage(Compressed);      }      if (_unknownFields != null) {        _unknownFields.WriteTo(output);      }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public int CalculateSize() {      int size = 0;      if (Size != 0) {        size += 1 + pb::CodedOutputStream.ComputeInt32Size(Size);      }      if (IntervalUs != 0) {        size += 1 + pb::CodedOutputStream.ComputeInt32Size(IntervalUs);      }      if (compressed_ != null) {        size += 1 + pb::CodedOutputStream.ComputeMessageSize(Compressed);      }      if (_unknownFields != null) {        size += _unknownFields.CalculateSize();      }      return size;    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public void MergeFrom(ResponseParameters other) {      if (other == null) {        return;      }      if (other.Size != 0) {        Size = other.Size;      }      if (other.IntervalUs != 0) {        IntervalUs = other.IntervalUs;      }      if (other.compressed_ != null) {        if (compressed_ == null) {          Compressed = new global::Grpc.Testing.BoolValue();        }        Compressed.MergeFrom(other.Compressed);      }      _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: {            Size = input.ReadInt32();            break;          }          case 16: {            IntervalUs = input.ReadInt32();            break;          }          case 26: {            if (compressed_ == null) {              Compressed = new global::Grpc.Testing.BoolValue();            }            input.ReadMessage(Compressed);            break;          }        }      }    }  }  /// <summary>  /// Server-streaming request.  /// </summary>  public sealed partial class StreamingOutputCallRequest : pb::IMessage<StreamingOutputCallRequest> {    private static readonly pb::MessageParser<StreamingOutputCallRequest> _parser = new pb::MessageParser<StreamingOutputCallRequest>(() => new StreamingOutputCallRequest());    private pb::UnknownFieldSet _unknownFields;    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pb::MessageParser<StreamingOutputCallRequest> Parser { get { return _parser; } }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pbr::MessageDescriptor Descriptor {      get { return global::Grpc.Testing.MessagesReflection.Descriptor.MessageTypes[8]; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    pbr::MessageDescriptor pb::IMessage.Descriptor {      get { return Descriptor; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public StreamingOutputCallRequest() {      OnConstruction();    }    partial void OnConstruction();    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public StreamingOutputCallRequest(StreamingOutputCallRequest other) : this() {      responseType_ = other.responseType_;      responseParameters_ = other.responseParameters_.Clone();      payload_ = other.payload_ != null ? other.payload_.Clone() : null;      responseStatus_ = other.responseStatus_ != null ? other.responseStatus_.Clone() : null;      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public StreamingOutputCallRequest Clone() {      return new StreamingOutputCallRequest(this);    }    /// <summary>Field number for the "response_type" field.</summary>    public const int ResponseTypeFieldNumber = 1;    private global::Grpc.Testing.PayloadType responseType_ = 0;    /// <summary>    /// Desired payload type in the response from the server.    /// If response_type is RANDOM, the payload from each response in the stream    /// might be of different types. This is to simulate a mixed type of payload    /// stream.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public global::Grpc.Testing.PayloadType ResponseType {      get { return responseType_; }      set {        responseType_ = value;      }    }    /// <summary>Field number for the "response_parameters" field.</summary>    public const int ResponseParametersFieldNumber = 2;    private static readonly pb::FieldCodec<global::Grpc.Testing.ResponseParameters> _repeated_responseParameters_codec        = pb::FieldCodec.ForMessage(18, global::Grpc.Testing.ResponseParameters.Parser);    private readonly pbc::RepeatedField<global::Grpc.Testing.ResponseParameters> responseParameters_ = new pbc::RepeatedField<global::Grpc.Testing.ResponseParameters>();    /// <summary>    /// Configuration for each expected response message.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public pbc::RepeatedField<global::Grpc.Testing.ResponseParameters> ResponseParameters {      get { return responseParameters_; }    }    /// <summary>Field number for the "payload" field.</summary>    public const int PayloadFieldNumber = 3;    private global::Grpc.Testing.Payload payload_;    /// <summary>    /// Optional input payload sent along with the request.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public global::Grpc.Testing.Payload Payload {      get { return payload_; }      set {        payload_ = value;      }    }    /// <summary>Field number for the "response_status" field.</summary>    public const int ResponseStatusFieldNumber = 7;    private global::Grpc.Testing.EchoStatus responseStatus_;    /// <summary>    /// Whether server should return a given status    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public global::Grpc.Testing.EchoStatus ResponseStatus {      get { return responseStatus_; }      set {        responseStatus_ = value;      }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override bool Equals(object other) {      return Equals(other as StreamingOutputCallRequest);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public bool Equals(StreamingOutputCallRequest other) {      if (ReferenceEquals(other, null)) {        return false;      }      if (ReferenceEquals(other, this)) {        return true;      }      if (ResponseType != other.ResponseType) return false;      if(!responseParameters_.Equals(other.responseParameters_)) return false;      if (!object.Equals(Payload, other.Payload)) return false;      if (!object.Equals(ResponseStatus, other.ResponseStatus)) return false;      return Equals(_unknownFields, other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override int GetHashCode() {      int hash = 1;      if (ResponseType != 0) hash ^= ResponseType.GetHashCode();      hash ^= responseParameters_.GetHashCode();      if (payload_ != null) hash ^= Payload.GetHashCode();      if (responseStatus_ != null) hash ^= ResponseStatus.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 (ResponseType != 0) {        output.WriteRawTag(8);        output.WriteEnum((int) ResponseType);      }      responseParameters_.WriteTo(output, _repeated_responseParameters_codec);      if (payload_ != null) {        output.WriteRawTag(26);        output.WriteMessage(Payload);      }      if (responseStatus_ != null) {        output.WriteRawTag(58);        output.WriteMessage(ResponseStatus);      }      if (_unknownFields != null) {        _unknownFields.WriteTo(output);      }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public int CalculateSize() {      int size = 0;      if (ResponseType != 0) {        size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) ResponseType);      }      size += responseParameters_.CalculateSize(_repeated_responseParameters_codec);      if (payload_ != null) {        size += 1 + pb::CodedOutputStream.ComputeMessageSize(Payload);      }      if (responseStatus_ != null) {        size += 1 + pb::CodedOutputStream.ComputeMessageSize(ResponseStatus);      }      if (_unknownFields != null) {        size += _unknownFields.CalculateSize();      }      return size;    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public void MergeFrom(StreamingOutputCallRequest other) {      if (other == null) {        return;      }      if (other.ResponseType != 0) {        ResponseType = other.ResponseType;      }      responseParameters_.Add(other.responseParameters_);      if (other.payload_ != null) {        if (payload_ == null) {          Payload = new global::Grpc.Testing.Payload();        }        Payload.MergeFrom(other.Payload);      }      if (other.responseStatus_ != null) {        if (responseStatus_ == null) {          ResponseStatus = new global::Grpc.Testing.EchoStatus();        }        ResponseStatus.MergeFrom(other.ResponseStatus);      }      _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: {            ResponseType = (global::Grpc.Testing.PayloadType) input.ReadEnum();            break;          }          case 18: {            responseParameters_.AddEntriesFrom(input, _repeated_responseParameters_codec);            break;          }          case 26: {            if (payload_ == null) {              Payload = new global::Grpc.Testing.Payload();            }            input.ReadMessage(Payload);            break;          }          case 58: {            if (responseStatus_ == null) {              ResponseStatus = new global::Grpc.Testing.EchoStatus();            }            input.ReadMessage(ResponseStatus);            break;          }        }      }    }  }  /// <summary>  /// Server-streaming response, as configured by the request and parameters.  /// </summary>  public sealed partial class StreamingOutputCallResponse : pb::IMessage<StreamingOutputCallResponse> {    private static readonly pb::MessageParser<StreamingOutputCallResponse> _parser = new pb::MessageParser<StreamingOutputCallResponse>(() => new StreamingOutputCallResponse());    private pb::UnknownFieldSet _unknownFields;    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pb::MessageParser<StreamingOutputCallResponse> Parser { get { return _parser; } }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pbr::MessageDescriptor Descriptor {      get { return global::Grpc.Testing.MessagesReflection.Descriptor.MessageTypes[9]; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    pbr::MessageDescriptor pb::IMessage.Descriptor {      get { return Descriptor; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public StreamingOutputCallResponse() {      OnConstruction();    }    partial void OnConstruction();    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public StreamingOutputCallResponse(StreamingOutputCallResponse other) : this() {      payload_ = other.payload_ != null ? other.payload_.Clone() : null;      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public StreamingOutputCallResponse Clone() {      return new StreamingOutputCallResponse(this);    }    /// <summary>Field number for the "payload" field.</summary>    public const int PayloadFieldNumber = 1;    private global::Grpc.Testing.Payload payload_;    /// <summary>    /// Payload to increase response size.    /// </summary>    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public global::Grpc.Testing.Payload Payload {      get { return payload_; }      set {        payload_ = value;      }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override bool Equals(object other) {      return Equals(other as StreamingOutputCallResponse);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public bool Equals(StreamingOutputCallResponse other) {      if (ReferenceEquals(other, null)) {        return false;      }      if (ReferenceEquals(other, this)) {        return true;      }      if (!object.Equals(Payload, other.Payload)) return false;      return Equals(_unknownFields, other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override int GetHashCode() {      int hash = 1;      if (payload_ != null) hash ^= Payload.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 (payload_ != null) {        output.WriteRawTag(10);        output.WriteMessage(Payload);      }      if (_unknownFields != null) {        _unknownFields.WriteTo(output);      }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public int CalculateSize() {      int size = 0;      if (payload_ != null) {        size += 1 + pb::CodedOutputStream.ComputeMessageSize(Payload);      }      if (_unknownFields != null) {        size += _unknownFields.CalculateSize();      }      return size;    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public void MergeFrom(StreamingOutputCallResponse other) {      if (other == null) {        return;      }      if (other.payload_ != null) {        if (payload_ == null) {          Payload = new global::Grpc.Testing.Payload();        }        Payload.MergeFrom(other.Payload);      }      _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: {            if (payload_ == null) {              Payload = new global::Grpc.Testing.Payload();            }            input.ReadMessage(Payload);            break;          }        }      }    }  }  /// <summary>  /// For reconnect interop test only.  /// Client tells server what reconnection parameters it used.  /// </summary>  public sealed partial class ReconnectParams : pb::IMessage<ReconnectParams> {    private static readonly pb::MessageParser<ReconnectParams> _parser = new pb::MessageParser<ReconnectParams>(() => new ReconnectParams());    private pb::UnknownFieldSet _unknownFields;    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pb::MessageParser<ReconnectParams> Parser { get { return _parser; } }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pbr::MessageDescriptor Descriptor {      get { return global::Grpc.Testing.MessagesReflection.Descriptor.MessageTypes[10]; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    pbr::MessageDescriptor pb::IMessage.Descriptor {      get { return Descriptor; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public ReconnectParams() {      OnConstruction();    }    partial void OnConstruction();    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public ReconnectParams(ReconnectParams other) : this() {      maxReconnectBackoffMs_ = other.maxReconnectBackoffMs_;      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public ReconnectParams Clone() {      return new ReconnectParams(this);    }    /// <summary>Field number for the "max_reconnect_backoff_ms" field.</summary>    public const int MaxReconnectBackoffMsFieldNumber = 1;    private int maxReconnectBackoffMs_;    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public int MaxReconnectBackoffMs {      get { return maxReconnectBackoffMs_; }      set {        maxReconnectBackoffMs_ = value;      }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override bool Equals(object other) {      return Equals(other as ReconnectParams);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public bool Equals(ReconnectParams other) {      if (ReferenceEquals(other, null)) {        return false;      }      if (ReferenceEquals(other, this)) {        return true;      }      if (MaxReconnectBackoffMs != other.MaxReconnectBackoffMs) return false;      return Equals(_unknownFields, other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override int GetHashCode() {      int hash = 1;      if (MaxReconnectBackoffMs != 0) hash ^= MaxReconnectBackoffMs.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 (MaxReconnectBackoffMs != 0) {        output.WriteRawTag(8);        output.WriteInt32(MaxReconnectBackoffMs);      }      if (_unknownFields != null) {        _unknownFields.WriteTo(output);      }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public int CalculateSize() {      int size = 0;      if (MaxReconnectBackoffMs != 0) {        size += 1 + pb::CodedOutputStream.ComputeInt32Size(MaxReconnectBackoffMs);      }      if (_unknownFields != null) {        size += _unknownFields.CalculateSize();      }      return size;    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public void MergeFrom(ReconnectParams other) {      if (other == null) {        return;      }      if (other.MaxReconnectBackoffMs != 0) {        MaxReconnectBackoffMs = other.MaxReconnectBackoffMs;      }      _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: {            MaxReconnectBackoffMs = input.ReadInt32();            break;          }        }      }    }  }  /// <summary>  /// For reconnect interop test only.  /// Server tells client whether its reconnects are following the spec and the  /// reconnect backoffs it saw.  /// </summary>  public sealed partial class ReconnectInfo : pb::IMessage<ReconnectInfo> {    private static readonly pb::MessageParser<ReconnectInfo> _parser = new pb::MessageParser<ReconnectInfo>(() => new ReconnectInfo());    private pb::UnknownFieldSet _unknownFields;    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pb::MessageParser<ReconnectInfo> Parser { get { return _parser; } }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public static pbr::MessageDescriptor Descriptor {      get { return global::Grpc.Testing.MessagesReflection.Descriptor.MessageTypes[11]; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    pbr::MessageDescriptor pb::IMessage.Descriptor {      get { return Descriptor; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public ReconnectInfo() {      OnConstruction();    }    partial void OnConstruction();    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public ReconnectInfo(ReconnectInfo other) : this() {      passed_ = other.passed_;      backoffMs_ = other.backoffMs_.Clone();      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public ReconnectInfo Clone() {      return new ReconnectInfo(this);    }    /// <summary>Field number for the "passed" field.</summary>    public const int PassedFieldNumber = 1;    private bool passed_;    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public bool Passed {      get { return passed_; }      set {        passed_ = value;      }    }    /// <summary>Field number for the "backoff_ms" field.</summary>    public const int BackoffMsFieldNumber = 2;    private static readonly pb::FieldCodec<int> _repeated_backoffMs_codec        = pb::FieldCodec.ForInt32(18);    private readonly pbc::RepeatedField<int> backoffMs_ = new pbc::RepeatedField<int>();    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public pbc::RepeatedField<int> BackoffMs {      get { return backoffMs_; }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override bool Equals(object other) {      return Equals(other as ReconnectInfo);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public bool Equals(ReconnectInfo other) {      if (ReferenceEquals(other, null)) {        return false;      }      if (ReferenceEquals(other, this)) {        return true;      }      if (Passed != other.Passed) return false;      if(!backoffMs_.Equals(other.backoffMs_)) return false;      return Equals(_unknownFields, other._unknownFields);    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public override int GetHashCode() {      int hash = 1;      if (Passed != false) hash ^= Passed.GetHashCode();      hash ^= backoffMs_.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 (Passed != false) {        output.WriteRawTag(8);        output.WriteBool(Passed);      }      backoffMs_.WriteTo(output, _repeated_backoffMs_codec);      if (_unknownFields != null) {        _unknownFields.WriteTo(output);      }    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public int CalculateSize() {      int size = 0;      if (Passed != false) {        size += 1 + 1;      }      size += backoffMs_.CalculateSize(_repeated_backoffMs_codec);      if (_unknownFields != null) {        size += _unknownFields.CalculateSize();      }      return size;    }    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]    public void MergeFrom(ReconnectInfo other) {      if (other == null) {        return;      }      if (other.Passed != false) {        Passed = other.Passed;      }      backoffMs_.Add(other.backoffMs_);      _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: {            Passed = input.ReadBool();            break;          }          case 18:          case 16: {            backoffMs_.AddEntriesFrom(input, _repeated_backoffMs_codec);            break;          }        }      }    }  }  #endregion}#endregion Designer generated code
 |