Imported Upstream version 3.8.0
[platform/upstream/protobuf.git] / csharp / src / Google.Protobuf.Test / TestProtos / TestMessagesProto3.cs
1 // <auto-generated>
2 //     Generated by the protocol buffer compiler.  DO NOT EDIT!
3 //     source: google/protobuf/test_messages_proto3.proto
4 // </auto-generated>
5 #pragma warning disable 1591, 0612, 3021
6 #region Designer generated code
7
8 using pb = global::Google.Protobuf;
9 using pbc = global::Google.Protobuf.Collections;
10 using pbr = global::Google.Protobuf.Reflection;
11 using scg = global::System.Collections.Generic;
12 namespace ProtobufTestMessages.Proto3 {
13
14   /// <summary>Holder for reflection information generated from google/protobuf/test_messages_proto3.proto</summary>
15   public static partial class TestMessagesProto3Reflection {
16
17     #region Descriptor
18     /// <summary>File descriptor for google/protobuf/test_messages_proto3.proto</summary>
19     public static pbr::FileDescriptor Descriptor {
20       get { return descriptor; }
21     }
22     private static pbr::FileDescriptor descriptor;
23
24     static TestMessagesProto3Reflection() {
25       byte[] descriptorData = global::System.Convert.FromBase64String(
26           string.Concat(
27             "Cipnb29nbGUvcHJvdG9idWYvdGVzdF9tZXNzYWdlc19wcm90bzMucHJvdG8S",
28             "HXByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zGhlnb29nbGUvcHJvdG9i",
29             "dWYvYW55LnByb3RvGh5nb29nbGUvcHJvdG9idWYvZHVyYXRpb24ucHJvdG8a",
30             "IGdvb2dsZS9wcm90b2J1Zi9maWVsZF9tYXNrLnByb3RvGhxnb29nbGUvcHJv",
31             "dG9idWYvc3RydWN0LnByb3RvGh9nb29nbGUvcHJvdG9idWYvdGltZXN0YW1w",
32             "LnByb3RvGh5nb29nbGUvcHJvdG9idWYvd3JhcHBlcnMucHJvdG8ipz0KElRl",
33             "c3RBbGxUeXBlc1Byb3RvMxIWCg5vcHRpb25hbF9pbnQzMhgBIAEoBRIWCg5v",
34             "cHRpb25hbF9pbnQ2NBgCIAEoAxIXCg9vcHRpb25hbF91aW50MzIYAyABKA0S",
35             "FwoPb3B0aW9uYWxfdWludDY0GAQgASgEEhcKD29wdGlvbmFsX3NpbnQzMhgF",
36             "IAEoERIXCg9vcHRpb25hbF9zaW50NjQYBiABKBISGAoQb3B0aW9uYWxfZml4",
37             "ZWQzMhgHIAEoBxIYChBvcHRpb25hbF9maXhlZDY0GAggASgGEhkKEW9wdGlv",
38             "bmFsX3NmaXhlZDMyGAkgASgPEhkKEW9wdGlvbmFsX3NmaXhlZDY0GAogASgQ",
39             "EhYKDm9wdGlvbmFsX2Zsb2F0GAsgASgCEhcKD29wdGlvbmFsX2RvdWJsZRgM",
40             "IAEoARIVCg1vcHRpb25hbF9ib29sGA0gASgIEhcKD29wdGlvbmFsX3N0cmlu",
41             "ZxgOIAEoCRIWCg5vcHRpb25hbF9ieXRlcxgPIAEoDBJgChdvcHRpb25hbF9u",
42             "ZXN0ZWRfbWVzc2FnZRgSIAEoCzI/LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMu",
43             "cHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRNZXNzYWdlEk8KGG9w",
44             "dGlvbmFsX2ZvcmVpZ25fbWVzc2FnZRgTIAEoCzItLnByb3RvYnVmX3Rlc3Rf",
45             "bWVzc2FnZXMucHJvdG8zLkZvcmVpZ25NZXNzYWdlEloKFG9wdGlvbmFsX25l",
46             "c3RlZF9lbnVtGBUgASgOMjwucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90",
47             "bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZEVudW0SSQoVb3B0aW9uYWxf",
48             "Zm9yZWlnbl9lbnVtGBYgASgOMioucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5w",
49             "cm90bzMuRm9yZWlnbkVudW0SXAoVb3B0aW9uYWxfYWxpYXNlZF9lbnVtGBcg",
50             "ASgOMj0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5",
51             "cGVzUHJvdG8zLkFsaWFzZWRFbnVtEiEKFW9wdGlvbmFsX3N0cmluZ19waWVj",
52             "ZRgYIAEoCUICCAISGQoNb3B0aW9uYWxfY29yZBgZIAEoCUICCAESTAoRcmVj",
53             "dXJzaXZlX21lc3NhZ2UYGyABKAsyMS5wcm90b2J1Zl90ZXN0X21lc3NhZ2Vz",
54             "LnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMSFgoOcmVwZWF0ZWRfaW50MzIY",
55             "HyADKAUSFgoOcmVwZWF0ZWRfaW50NjQYICADKAMSFwoPcmVwZWF0ZWRfdWlu",
56             "dDMyGCEgAygNEhcKD3JlcGVhdGVkX3VpbnQ2NBgiIAMoBBIXCg9yZXBlYXRl",
57             "ZF9zaW50MzIYIyADKBESFwoPcmVwZWF0ZWRfc2ludDY0GCQgAygSEhgKEHJl",
58             "cGVhdGVkX2ZpeGVkMzIYJSADKAcSGAoQcmVwZWF0ZWRfZml4ZWQ2NBgmIAMo",
59             "BhIZChFyZXBlYXRlZF9zZml4ZWQzMhgnIAMoDxIZChFyZXBlYXRlZF9zZml4",
60             "ZWQ2NBgoIAMoEBIWCg5yZXBlYXRlZF9mbG9hdBgpIAMoAhIXCg9yZXBlYXRl",
61             "ZF9kb3VibGUYKiADKAESFQoNcmVwZWF0ZWRfYm9vbBgrIAMoCBIXCg9yZXBl",
62             "YXRlZF9zdHJpbmcYLCADKAkSFgoOcmVwZWF0ZWRfYnl0ZXMYLSADKAwSYAoX",
63             "cmVwZWF0ZWRfbmVzdGVkX21lc3NhZ2UYMCADKAsyPy5wcm90b2J1Zl90ZXN0",
64             "X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkTWVz",
65             "c2FnZRJPChhyZXBlYXRlZF9mb3JlaWduX21lc3NhZ2UYMSADKAsyLS5wcm90",
66             "b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5Gb3JlaWduTWVzc2FnZRJaChRy",
67             "ZXBlYXRlZF9uZXN0ZWRfZW51bRgzIAMoDjI8LnByb3RvYnVmX3Rlc3RfbWVz",
68             "c2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5OZXN0ZWRFbnVtEkkK",
69             "FXJlcGVhdGVkX2ZvcmVpZ25fZW51bRg0IAMoDjIqLnByb3RvYnVmX3Rlc3Rf",
70             "bWVzc2FnZXMucHJvdG8zLkZvcmVpZ25FbnVtEiEKFXJlcGVhdGVkX3N0cmlu",
71             "Z19waWVjZRg2IAMoCUICCAISGQoNcmVwZWF0ZWRfY29yZBg3IAMoCUICCAES",
72             "XQoPbWFwX2ludDMyX2ludDMyGDggAygLMkQucHJvdG9idWZfdGVzdF9tZXNz",
73             "YWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcEludDMySW50MzJF",
74             "bnRyeRJdCg9tYXBfaW50NjRfaW50NjQYOSADKAsyRC5wcm90b2J1Zl90ZXN0",
75             "X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwSW50NjRJ",
76             "bnQ2NEVudHJ5EmEKEW1hcF91aW50MzJfdWludDMyGDogAygLMkYucHJvdG9i",
77             "dWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1h",
78             "cFVpbnQzMlVpbnQzMkVudHJ5EmEKEW1hcF91aW50NjRfdWludDY0GDsgAygL",
79             "MkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVz",
80             "UHJvdG8zLk1hcFVpbnQ2NFVpbnQ2NEVudHJ5EmEKEW1hcF9zaW50MzJfc2lu",
81             "dDMyGDwgAygLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVz",
82             "dEFsbFR5cGVzUHJvdG8zLk1hcFNpbnQzMlNpbnQzMkVudHJ5EmEKEW1hcF9z",
83             "aW50NjRfc2ludDY0GD0gAygLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5w",
84             "cm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFNpbnQ2NFNpbnQ2NEVudHJ5",
85             "EmUKE21hcF9maXhlZDMyX2ZpeGVkMzIYPiADKAsySC5wcm90b2J1Zl90ZXN0",
86             "X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwRml4ZWQz",
87             "MkZpeGVkMzJFbnRyeRJlChNtYXBfZml4ZWQ2NF9maXhlZDY0GD8gAygLMkgu",
88             "cHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJv",
89             "dG8zLk1hcEZpeGVkNjRGaXhlZDY0RW50cnkSaQoVbWFwX3NmaXhlZDMyX3Nm",
90             "aXhlZDMyGEAgAygLMkoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMu",
91             "VGVzdEFsbFR5cGVzUHJvdG8zLk1hcFNmaXhlZDMyU2ZpeGVkMzJFbnRyeRJp",
92             "ChVtYXBfc2ZpeGVkNjRfc2ZpeGVkNjQYQSADKAsySi5wcm90b2J1Zl90ZXN0",
93             "X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU2ZpeGVk",
94             "NjRTZml4ZWQ2NEVudHJ5El0KD21hcF9pbnQzMl9mbG9hdBhCIAMoCzJELnBy",
95             "b3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3Rv",
96             "My5NYXBJbnQzMkZsb2F0RW50cnkSXwoQbWFwX2ludDMyX2RvdWJsZRhDIAMo",
97             "CzJFLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBl",
98             "c1Byb3RvMy5NYXBJbnQzMkRvdWJsZUVudHJ5ElkKDW1hcF9ib29sX2Jvb2wY",
99             "RCADKAsyQi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxs",
100             "VHlwZXNQcm90bzMuTWFwQm9vbEJvb2xFbnRyeRJhChFtYXBfc3RyaW5nX3N0",
101             "cmluZxhFIAMoCzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRl",
102             "c3RBbGxUeXBlc1Byb3RvMy5NYXBTdHJpbmdTdHJpbmdFbnRyeRJfChBtYXBf",
103             "c3RyaW5nX2J5dGVzGEYgAygLMkUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5w",
104             "cm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1hcFN0cmluZ0J5dGVzRW50cnkS",
105             "cAoZbWFwX3N0cmluZ19uZXN0ZWRfbWVzc2FnZRhHIAMoCzJNLnByb3RvYnVm",
106             "X3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRlc3RBbGxUeXBlc1Byb3RvMy5NYXBT",
107             "dHJpbmdOZXN0ZWRNZXNzYWdlRW50cnkScgoabWFwX3N0cmluZ19mb3JlaWdu",
108             "X21lc3NhZ2UYSCADKAsyTi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3Rv",
109             "My5UZXN0QWxsVHlwZXNQcm90bzMuTWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2VF",
110             "bnRyeRJqChZtYXBfc3RyaW5nX25lc3RlZF9lbnVtGEkgAygLMkoucHJvdG9i",
111             "dWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk1h",
112             "cFN0cmluZ05lc3RlZEVudW1FbnRyeRJsChdtYXBfc3RyaW5nX2ZvcmVpZ25f",
113             "ZW51bRhKIAMoCzJLLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8zLlRl",
114             "c3RBbGxUeXBlc1Byb3RvMy5NYXBTdHJpbmdGb3JlaWduRW51bUVudHJ5EhYK",
115             "DG9uZW9mX3VpbnQzMhhvIAEoDUgAEl8KFG9uZW9mX25lc3RlZF9tZXNzYWdl",
116             "GHAgASgLMj8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMuVGVzdEFs",
117             "bFR5cGVzUHJvdG8zLk5lc3RlZE1lc3NhZ2VIABIWCgxvbmVvZl9zdHJpbmcY",
118             "cSABKAlIABIVCgtvbmVvZl9ieXRlcxhyIAEoDEgAEhQKCm9uZW9mX2Jvb2wY",
119             "cyABKAhIABIWCgxvbmVvZl91aW50NjQYdCABKARIABIVCgtvbmVvZl9mbG9h",
120             "dBh1IAEoAkgAEhYKDG9uZW9mX2RvdWJsZRh2IAEoAUgAElIKCm9uZW9mX2Vu",
121             "dW0YdyABKA4yPC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnByb3RvMy5UZXN0",
122             "QWxsVHlwZXNQcm90bzMuTmVzdGVkRW51bUgAEjoKFW9wdGlvbmFsX2Jvb2xf",
123             "d3JhcHBlchjJASABKAsyGi5nb29nbGUucHJvdG9idWYuQm9vbFZhbHVlEjwK",
124             "Fm9wdGlvbmFsX2ludDMyX3dyYXBwZXIYygEgASgLMhsuZ29vZ2xlLnByb3Rv",
125             "YnVmLkludDMyVmFsdWUSPAoWb3B0aW9uYWxfaW50NjRfd3JhcHBlchjLASAB",
126             "KAsyGy5nb29nbGUucHJvdG9idWYuSW50NjRWYWx1ZRI+ChdvcHRpb25hbF91",
127             "aW50MzJfd3JhcHBlchjMASABKAsyHC5nb29nbGUucHJvdG9idWYuVUludDMy",
128             "VmFsdWUSPgoXb3B0aW9uYWxfdWludDY0X3dyYXBwZXIYzQEgASgLMhwuZ29v",
129             "Z2xlLnByb3RvYnVmLlVJbnQ2NFZhbHVlEjwKFm9wdGlvbmFsX2Zsb2F0X3dy",
130             "YXBwZXIYzgEgASgLMhsuZ29vZ2xlLnByb3RvYnVmLkZsb2F0VmFsdWUSPgoX",
131             "b3B0aW9uYWxfZG91YmxlX3dyYXBwZXIYzwEgASgLMhwuZ29vZ2xlLnByb3Rv",
132             "YnVmLkRvdWJsZVZhbHVlEj4KF29wdGlvbmFsX3N0cmluZ193cmFwcGVyGNAB",
133             "IAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5TdHJpbmdWYWx1ZRI8ChZvcHRpb25h",
134             "bF9ieXRlc193cmFwcGVyGNEBIAEoCzIbLmdvb2dsZS5wcm90b2J1Zi5CeXRl",
135             "c1ZhbHVlEjoKFXJlcGVhdGVkX2Jvb2xfd3JhcHBlchjTASADKAsyGi5nb29n",
136             "bGUucHJvdG9idWYuQm9vbFZhbHVlEjwKFnJlcGVhdGVkX2ludDMyX3dyYXBw",
137             "ZXIY1AEgAygLMhsuZ29vZ2xlLnByb3RvYnVmLkludDMyVmFsdWUSPAoWcmVw",
138             "ZWF0ZWRfaW50NjRfd3JhcHBlchjVASADKAsyGy5nb29nbGUucHJvdG9idWYu",
139             "SW50NjRWYWx1ZRI+ChdyZXBlYXRlZF91aW50MzJfd3JhcHBlchjWASADKAsy",
140             "HC5nb29nbGUucHJvdG9idWYuVUludDMyVmFsdWUSPgoXcmVwZWF0ZWRfdWlu",
141             "dDY0X3dyYXBwZXIY1wEgAygLMhwuZ29vZ2xlLnByb3RvYnVmLlVJbnQ2NFZh",
142             "bHVlEjwKFnJlcGVhdGVkX2Zsb2F0X3dyYXBwZXIY2AEgAygLMhsuZ29vZ2xl",
143             "LnByb3RvYnVmLkZsb2F0VmFsdWUSPgoXcmVwZWF0ZWRfZG91YmxlX3dyYXBw",
144             "ZXIY2QEgAygLMhwuZ29vZ2xlLnByb3RvYnVmLkRvdWJsZVZhbHVlEj4KF3Jl",
145             "cGVhdGVkX3N0cmluZ193cmFwcGVyGNoBIAMoCzIcLmdvb2dsZS5wcm90b2J1",
146             "Zi5TdHJpbmdWYWx1ZRI8ChZyZXBlYXRlZF9ieXRlc193cmFwcGVyGNsBIAMo",
147             "CzIbLmdvb2dsZS5wcm90b2J1Zi5CeXRlc1ZhbHVlEjUKEW9wdGlvbmFsX2R1",
148             "cmF0aW9uGK0CIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhI3ChJv",
149             "cHRpb25hbF90aW1lc3RhbXAYrgIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRp",
150             "bWVzdGFtcBI4ChNvcHRpb25hbF9maWVsZF9tYXNrGK8CIAEoCzIaLmdvb2ds",
151             "ZS5wcm90b2J1Zi5GaWVsZE1hc2sSMQoPb3B0aW9uYWxfc3RydWN0GLACIAEo",
152             "CzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSKwoMb3B0aW9uYWxfYW55GLEC",
153             "IAEoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnkSLwoOb3B0aW9uYWxfdmFsdWUY",
154             "sgIgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlEjUKEXJlcGVhdGVkX2R1",
155             "cmF0aW9uGLcCIAMoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhI3ChJy",
156             "ZXBlYXRlZF90aW1lc3RhbXAYuAIgAygLMhouZ29vZ2xlLnByb3RvYnVmLlRp",
157             "bWVzdGFtcBI3ChJyZXBlYXRlZF9maWVsZG1hc2sYuQIgAygLMhouZ29vZ2xl",
158             "LnByb3RvYnVmLkZpZWxkTWFzaxIxCg9yZXBlYXRlZF9zdHJ1Y3QYxAIgAygL",
159             "MhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIrCgxyZXBlYXRlZF9hbnkYuwIg",
160             "AygLMhQuZ29vZ2xlLnByb3RvYnVmLkFueRIvCg5yZXBlYXRlZF92YWx1ZRi8",
161             "AiADKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWUSOAoTcmVwZWF0ZWRfbGlz",
162             "dF92YWx1ZRi9AiADKAsyGi5nb29nbGUucHJvdG9idWYuTGlzdFZhbHVlEhMK",
163             "CmZpZWxkbmFtZTEYkQMgASgFEhQKC2ZpZWxkX25hbWUyGJIDIAEoBRIVCgxf",
164             "ZmllbGRfbmFtZTMYkwMgASgFEhYKDWZpZWxkX19uYW1lNF8YlAMgASgFEhQK",
165             "C2ZpZWxkMG5hbWU1GJUDIAEoBRIWCg1maWVsZF8wX25hbWU2GJYDIAEoBRIT",
166             "CgpmaWVsZE5hbWU3GJcDIAEoBRITCgpGaWVsZE5hbWU4GJgDIAEoBRIUCgtm",
167             "aWVsZF9OYW1lORiZAyABKAUSFQoMRmllbGRfTmFtZTEwGJoDIAEoBRIVCgxG",
168             "SUVMRF9OQU1FMTEYmwMgASgFEhUKDEZJRUxEX25hbWUxMhicAyABKAUSFwoO",
169             "X19maWVsZF9uYW1lMTMYnQMgASgFEhcKDl9fRmllbGRfbmFtZTE0GJ4DIAEo",
170             "BRIWCg1maWVsZF9fbmFtZTE1GJ8DIAEoBRIWCg1maWVsZF9fTmFtZTE2GKAD",
171             "IAEoBRIXCg5maWVsZF9uYW1lMTdfXxihAyABKAUSFwoORmllbGRfbmFtZTE4",
172             "X18YogMgASgFGmIKDU5lc3RlZE1lc3NhZ2USCQoBYRgBIAEoBRJGCgtjb3Jl",
173             "Y3Vyc2l2ZRgCIAEoCzIxLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMucHJvdG8z",
174             "LlRlc3RBbGxUeXBlc1Byb3RvMxo0ChJNYXBJbnQzMkludDMyRW50cnkSCwoD",
175             "a2V5GAEgASgFEg0KBXZhbHVlGAIgASgFOgI4ARo0ChJNYXBJbnQ2NEludDY0",
176             "RW50cnkSCwoDa2V5GAEgASgDEg0KBXZhbHVlGAIgASgDOgI4ARo2ChRNYXBV",
177             "aW50MzJVaW50MzJFbnRyeRILCgNrZXkYASABKA0SDQoFdmFsdWUYAiABKA06",
178             "AjgBGjYKFE1hcFVpbnQ2NFVpbnQ2NEVudHJ5EgsKA2tleRgBIAEoBBINCgV2",
179             "YWx1ZRgCIAEoBDoCOAEaNgoUTWFwU2ludDMyU2ludDMyRW50cnkSCwoDa2V5",
180             "GAEgASgREg0KBXZhbHVlGAIgASgROgI4ARo2ChRNYXBTaW50NjRTaW50NjRF",
181             "bnRyeRILCgNrZXkYASABKBISDQoFdmFsdWUYAiABKBI6AjgBGjgKFk1hcEZp",
182             "eGVkMzJGaXhlZDMyRW50cnkSCwoDa2V5GAEgASgHEg0KBXZhbHVlGAIgASgH",
183             "OgI4ARo4ChZNYXBGaXhlZDY0Rml4ZWQ2NEVudHJ5EgsKA2tleRgBIAEoBhIN",
184             "CgV2YWx1ZRgCIAEoBjoCOAEaOgoYTWFwU2ZpeGVkMzJTZml4ZWQzMkVudHJ5",
185             "EgsKA2tleRgBIAEoDxINCgV2YWx1ZRgCIAEoDzoCOAEaOgoYTWFwU2ZpeGVk",
186             "NjRTZml4ZWQ2NEVudHJ5EgsKA2tleRgBIAEoEBINCgV2YWx1ZRgCIAEoEDoC",
187             "OAEaNAoSTWFwSW50MzJGbG9hdEVudHJ5EgsKA2tleRgBIAEoBRINCgV2YWx1",
188             "ZRgCIAEoAjoCOAEaNQoTTWFwSW50MzJEb3VibGVFbnRyeRILCgNrZXkYASAB",
189             "KAUSDQoFdmFsdWUYAiABKAE6AjgBGjIKEE1hcEJvb2xCb29sRW50cnkSCwoD",
190             "a2V5GAEgASgIEg0KBXZhbHVlGAIgASgIOgI4ARo2ChRNYXBTdHJpbmdTdHJp",
191             "bmdFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBGjUKE01h",
192             "cFN0cmluZ0J5dGVzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgM",
193             "OgI4ARp+ChtNYXBTdHJpbmdOZXN0ZWRNZXNzYWdlRW50cnkSCwoDa2V5GAEg",
194             "ASgJEk4KBXZhbHVlGAIgASgLMj8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5w",
195             "cm90bzMuVGVzdEFsbFR5cGVzUHJvdG8zLk5lc3RlZE1lc3NhZ2U6AjgBGm0K",
196             "HE1hcFN0cmluZ0ZvcmVpZ25NZXNzYWdlRW50cnkSCwoDa2V5GAEgASgJEjwK",
197             "BXZhbHVlGAIgASgLMi0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5wcm90bzMu",
198             "Rm9yZWlnbk1lc3NhZ2U6AjgBGngKGE1hcFN0cmluZ05lc3RlZEVudW1FbnRy",
199             "eRILCgNrZXkYASABKAkSSwoFdmFsdWUYAiABKA4yPC5wcm90b2J1Zl90ZXN0",
200             "X21lc3NhZ2VzLnByb3RvMy5UZXN0QWxsVHlwZXNQcm90bzMuTmVzdGVkRW51",
201             "bToCOAEaZwoZTWFwU3RyaW5nRm9yZWlnbkVudW1FbnRyeRILCgNrZXkYASAB",
202             "KAkSOQoFdmFsdWUYAiABKA4yKi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLnBy",
203             "b3RvMy5Gb3JlaWduRW51bToCOAEiOQoKTmVzdGVkRW51bRIHCgNGT08QABIH",
204             "CgNCQVIQARIHCgNCQVoQAhIQCgNORUcQ////////////ASJZCgtBbGlhc2Vk",
205             "RW51bRINCglBTElBU19GT08QABINCglBTElBU19CQVIQARINCglBTElBU19C",
206             "QVoQAhIHCgNRVVgQAhIHCgNxdXgQAhIHCgNiQXoQAhoCEAFCDQoLb25lb2Zf",
207             "ZmllbGRKBgj1AxD/AyIbCg5Gb3JlaWduTWVzc2FnZRIJCgFjGAEgASgFKkAK",
208             "C0ZvcmVpZ25FbnVtEg8KC0ZPUkVJR05fRk9PEAASDwoLRk9SRUlHTl9CQVIQ",
209             "ARIPCgtGT1JFSUdOX0JBWhACQjgKKGNvbS5nb29nbGUucHJvdG9idWZfdGVz",
210             "dF9tZXNzYWdlcy5wcm90bzNIAfgBAaICBlByb3RvM2IGcHJvdG8z"));
211       descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
212           new pbr::FileDescriptor[] { global::Google.Protobuf.WellKnownTypes.AnyReflection.Descriptor, global::Google.Protobuf.WellKnownTypes.DurationReflection.Descriptor, global::Google.Protobuf.WellKnownTypes.FieldMaskReflection.Descriptor, global::Google.Protobuf.WellKnownTypes.StructReflection.Descriptor, global::Google.Protobuf.WellKnownTypes.TimestampReflection.Descriptor, global::Google.Protobuf.WellKnownTypes.WrappersReflection.Descriptor, },
213           new pbr::GeneratedClrTypeInfo(new[] {typeof(global::ProtobufTestMessages.Proto3.ForeignEnum), }, new pbr::GeneratedClrTypeInfo[] {
214             new pbr::GeneratedClrTypeInfo(typeof(global::ProtobufTestMessages.Proto3.TestAllTypesProto3), global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Parser, new[]{ "OptionalInt32", "OptionalInt64", "OptionalUint32", "OptionalUint64", "OptionalSint32", "OptionalSint64", "OptionalFixed32", "OptionalFixed64", "OptionalSfixed32", "OptionalSfixed64", "OptionalFloat", "OptionalDouble", "OptionalBool", "OptionalString", "OptionalBytes", "OptionalNestedMessage", "OptionalForeignMessage", "OptionalNestedEnum", "OptionalForeignEnum", "OptionalAliasedEnum", "OptionalStringPiece", "OptionalCord", "RecursiveMessage", "RepeatedInt32", "RepeatedInt64", "RepeatedUint32", "RepeatedUint64", "RepeatedSint32", "RepeatedSint64", "RepeatedFixed32", "RepeatedFixed64", "RepeatedSfixed32", "RepeatedSfixed64", "RepeatedFloat", "RepeatedDouble", "RepeatedBool", "RepeatedString", "RepeatedBytes", "RepeatedNestedMessage", "RepeatedForeignMessage", "RepeatedNestedEnum", "RepeatedForeignEnum", "RepeatedStringPiece", "RepeatedCord", "MapInt32Int32", "MapInt64Int64", "MapUint32Uint32", "MapUint64Uint64", "MapSint32Sint32", "MapSint64Sint64", "MapFixed32Fixed32", "MapFixed64Fixed64", "MapSfixed32Sfixed32", "MapSfixed64Sfixed64", "MapInt32Float", "MapInt32Double", "MapBoolBool", "MapStringString", "MapStringBytes", "MapStringNestedMessage", "MapStringForeignMessage", "MapStringNestedEnum", "MapStringForeignEnum", "OneofUint32", "OneofNestedMessage", "OneofString", "OneofBytes", "OneofBool", "OneofUint64", "OneofFloat", "OneofDouble", "OneofEnum", "OptionalBoolWrapper", "OptionalInt32Wrapper", "OptionalInt64Wrapper", "OptionalUint32Wrapper", "OptionalUint64Wrapper", "OptionalFloatWrapper", "OptionalDoubleWrapper", "OptionalStringWrapper", "OptionalBytesWrapper", "RepeatedBoolWrapper", "RepeatedInt32Wrapper", "RepeatedInt64Wrapper", "RepeatedUint32Wrapper", "RepeatedUint64Wrapper", "RepeatedFloatWrapper", "RepeatedDoubleWrapper", "RepeatedStringWrapper", "RepeatedBytesWrapper", "OptionalDuration", "OptionalTimestamp", "OptionalFieldMask", "OptionalStruct", "OptionalAny", "OptionalValue", "RepeatedDuration", "RepeatedTimestamp", "RepeatedFieldmask", "RepeatedStruct", "RepeatedAny", "RepeatedValue", "RepeatedListValue", "Fieldname1", "FieldName2", "FieldName3", "FieldName4", "Field0Name5", "Field0Name6", "FieldName7", "FieldName8", "FieldName9", "FieldName10", "FIELDNAME11", "FIELDName12", "FieldName13", "FieldName14", "FieldName15", "FieldName16", "FieldName17", "FieldName18" }, new[]{ "OneofField" }, new[]{ typeof(global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedEnum), typeof(global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.AliasedEnum) }, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedMessage), global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedMessage.Parser, new[]{ "A", "Corecursive" }, null, null, null),
215             null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, }),
216             new pbr::GeneratedClrTypeInfo(typeof(global::ProtobufTestMessages.Proto3.ForeignMessage), global::ProtobufTestMessages.Proto3.ForeignMessage.Parser, new[]{ "C" }, null, null, null)
217           }));
218     }
219     #endregion
220
221   }
222   #region Enums
223   public enum ForeignEnum {
224     [pbr::OriginalName("FOREIGN_FOO")] ForeignFoo = 0,
225     [pbr::OriginalName("FOREIGN_BAR")] ForeignBar = 1,
226     [pbr::OriginalName("FOREIGN_BAZ")] ForeignBaz = 2,
227   }
228
229   #endregion
230
231   #region Messages
232   /// <summary>
233   /// This proto includes every type of field in both singular and repeated
234   /// forms.
235   ///
236   /// Also, crucially, all messages and enums in this file are eventually
237   /// submessages of this message.  So for example, a fuzz test of TestAllTypes
238   /// could trigger bugs that occur in any message type in this file.  We verify
239   /// this stays true in a unit test.
240   /// </summary>
241   public sealed partial class TestAllTypesProto3 : pb::IMessage<TestAllTypesProto3> {
242     private static readonly pb::MessageParser<TestAllTypesProto3> _parser = new pb::MessageParser<TestAllTypesProto3>(() => new TestAllTypesProto3());
243     private pb::UnknownFieldSet _unknownFields;
244     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
245     public static pb::MessageParser<TestAllTypesProto3> Parser { get { return _parser; } }
246
247     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
248     public static pbr::MessageDescriptor Descriptor {
249       get { return global::ProtobufTestMessages.Proto3.TestMessagesProto3Reflection.Descriptor.MessageTypes[0]; }
250     }
251
252     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
253     pbr::MessageDescriptor pb::IMessage.Descriptor {
254       get { return Descriptor; }
255     }
256
257     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
258     public TestAllTypesProto3() {
259       OnConstruction();
260     }
261
262     partial void OnConstruction();
263
264     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
265     public TestAllTypesProto3(TestAllTypesProto3 other) : this() {
266       optionalInt32_ = other.optionalInt32_;
267       optionalInt64_ = other.optionalInt64_;
268       optionalUint32_ = other.optionalUint32_;
269       optionalUint64_ = other.optionalUint64_;
270       optionalSint32_ = other.optionalSint32_;
271       optionalSint64_ = other.optionalSint64_;
272       optionalFixed32_ = other.optionalFixed32_;
273       optionalFixed64_ = other.optionalFixed64_;
274       optionalSfixed32_ = other.optionalSfixed32_;
275       optionalSfixed64_ = other.optionalSfixed64_;
276       optionalFloat_ = other.optionalFloat_;
277       optionalDouble_ = other.optionalDouble_;
278       optionalBool_ = other.optionalBool_;
279       optionalString_ = other.optionalString_;
280       optionalBytes_ = other.optionalBytes_;
281       optionalNestedMessage_ = other.optionalNestedMessage_ != null ? other.optionalNestedMessage_.Clone() : null;
282       optionalForeignMessage_ = other.optionalForeignMessage_ != null ? other.optionalForeignMessage_.Clone() : null;
283       optionalNestedEnum_ = other.optionalNestedEnum_;
284       optionalForeignEnum_ = other.optionalForeignEnum_;
285       optionalAliasedEnum_ = other.optionalAliasedEnum_;
286       optionalStringPiece_ = other.optionalStringPiece_;
287       optionalCord_ = other.optionalCord_;
288       recursiveMessage_ = other.recursiveMessage_ != null ? other.recursiveMessage_.Clone() : null;
289       repeatedInt32_ = other.repeatedInt32_.Clone();
290       repeatedInt64_ = other.repeatedInt64_.Clone();
291       repeatedUint32_ = other.repeatedUint32_.Clone();
292       repeatedUint64_ = other.repeatedUint64_.Clone();
293       repeatedSint32_ = other.repeatedSint32_.Clone();
294       repeatedSint64_ = other.repeatedSint64_.Clone();
295       repeatedFixed32_ = other.repeatedFixed32_.Clone();
296       repeatedFixed64_ = other.repeatedFixed64_.Clone();
297       repeatedSfixed32_ = other.repeatedSfixed32_.Clone();
298       repeatedSfixed64_ = other.repeatedSfixed64_.Clone();
299       repeatedFloat_ = other.repeatedFloat_.Clone();
300       repeatedDouble_ = other.repeatedDouble_.Clone();
301       repeatedBool_ = other.repeatedBool_.Clone();
302       repeatedString_ = other.repeatedString_.Clone();
303       repeatedBytes_ = other.repeatedBytes_.Clone();
304       repeatedNestedMessage_ = other.repeatedNestedMessage_.Clone();
305       repeatedForeignMessage_ = other.repeatedForeignMessage_.Clone();
306       repeatedNestedEnum_ = other.repeatedNestedEnum_.Clone();
307       repeatedForeignEnum_ = other.repeatedForeignEnum_.Clone();
308       repeatedStringPiece_ = other.repeatedStringPiece_.Clone();
309       repeatedCord_ = other.repeatedCord_.Clone();
310       mapInt32Int32_ = other.mapInt32Int32_.Clone();
311       mapInt64Int64_ = other.mapInt64Int64_.Clone();
312       mapUint32Uint32_ = other.mapUint32Uint32_.Clone();
313       mapUint64Uint64_ = other.mapUint64Uint64_.Clone();
314       mapSint32Sint32_ = other.mapSint32Sint32_.Clone();
315       mapSint64Sint64_ = other.mapSint64Sint64_.Clone();
316       mapFixed32Fixed32_ = other.mapFixed32Fixed32_.Clone();
317       mapFixed64Fixed64_ = other.mapFixed64Fixed64_.Clone();
318       mapSfixed32Sfixed32_ = other.mapSfixed32Sfixed32_.Clone();
319       mapSfixed64Sfixed64_ = other.mapSfixed64Sfixed64_.Clone();
320       mapInt32Float_ = other.mapInt32Float_.Clone();
321       mapInt32Double_ = other.mapInt32Double_.Clone();
322       mapBoolBool_ = other.mapBoolBool_.Clone();
323       mapStringString_ = other.mapStringString_.Clone();
324       mapStringBytes_ = other.mapStringBytes_.Clone();
325       mapStringNestedMessage_ = other.mapStringNestedMessage_.Clone();
326       mapStringForeignMessage_ = other.mapStringForeignMessage_.Clone();
327       mapStringNestedEnum_ = other.mapStringNestedEnum_.Clone();
328       mapStringForeignEnum_ = other.mapStringForeignEnum_.Clone();
329       OptionalBoolWrapper = other.OptionalBoolWrapper;
330       OptionalInt32Wrapper = other.OptionalInt32Wrapper;
331       OptionalInt64Wrapper = other.OptionalInt64Wrapper;
332       OptionalUint32Wrapper = other.OptionalUint32Wrapper;
333       OptionalUint64Wrapper = other.OptionalUint64Wrapper;
334       OptionalFloatWrapper = other.OptionalFloatWrapper;
335       OptionalDoubleWrapper = other.OptionalDoubleWrapper;
336       OptionalStringWrapper = other.OptionalStringWrapper;
337       OptionalBytesWrapper = other.OptionalBytesWrapper;
338       repeatedBoolWrapper_ = other.repeatedBoolWrapper_.Clone();
339       repeatedInt32Wrapper_ = other.repeatedInt32Wrapper_.Clone();
340       repeatedInt64Wrapper_ = other.repeatedInt64Wrapper_.Clone();
341       repeatedUint32Wrapper_ = other.repeatedUint32Wrapper_.Clone();
342       repeatedUint64Wrapper_ = other.repeatedUint64Wrapper_.Clone();
343       repeatedFloatWrapper_ = other.repeatedFloatWrapper_.Clone();
344       repeatedDoubleWrapper_ = other.repeatedDoubleWrapper_.Clone();
345       repeatedStringWrapper_ = other.repeatedStringWrapper_.Clone();
346       repeatedBytesWrapper_ = other.repeatedBytesWrapper_.Clone();
347       optionalDuration_ = other.optionalDuration_ != null ? other.optionalDuration_.Clone() : null;
348       optionalTimestamp_ = other.optionalTimestamp_ != null ? other.optionalTimestamp_.Clone() : null;
349       optionalFieldMask_ = other.optionalFieldMask_ != null ? other.optionalFieldMask_.Clone() : null;
350       optionalStruct_ = other.optionalStruct_ != null ? other.optionalStruct_.Clone() : null;
351       optionalAny_ = other.optionalAny_ != null ? other.optionalAny_.Clone() : null;
352       optionalValue_ = other.optionalValue_ != null ? other.optionalValue_.Clone() : null;
353       repeatedDuration_ = other.repeatedDuration_.Clone();
354       repeatedTimestamp_ = other.repeatedTimestamp_.Clone();
355       repeatedFieldmask_ = other.repeatedFieldmask_.Clone();
356       repeatedStruct_ = other.repeatedStruct_.Clone();
357       repeatedAny_ = other.repeatedAny_.Clone();
358       repeatedValue_ = other.repeatedValue_.Clone();
359       repeatedListValue_ = other.repeatedListValue_.Clone();
360       fieldname1_ = other.fieldname1_;
361       fieldName2_ = other.fieldName2_;
362       FieldName3_ = other.FieldName3_;
363       fieldName4_ = other.fieldName4_;
364       field0Name5_ = other.field0Name5_;
365       field0Name6_ = other.field0Name6_;
366       fieldName7_ = other.fieldName7_;
367       fieldName8_ = other.fieldName8_;
368       fieldName9_ = other.fieldName9_;
369       fieldName10_ = other.fieldName10_;
370       fIELDNAME11_ = other.fIELDNAME11_;
371       fIELDName12_ = other.fIELDName12_;
372       FieldName13_ = other.FieldName13_;
373       FieldName14_ = other.FieldName14_;
374       fieldName15_ = other.fieldName15_;
375       fieldName16_ = other.fieldName16_;
376       fieldName17_ = other.fieldName17_;
377       fieldName18_ = other.fieldName18_;
378       switch (other.OneofFieldCase) {
379         case OneofFieldOneofCase.OneofUint32:
380           OneofUint32 = other.OneofUint32;
381           break;
382         case OneofFieldOneofCase.OneofNestedMessage:
383           OneofNestedMessage = other.OneofNestedMessage.Clone();
384           break;
385         case OneofFieldOneofCase.OneofString:
386           OneofString = other.OneofString;
387           break;
388         case OneofFieldOneofCase.OneofBytes:
389           OneofBytes = other.OneofBytes;
390           break;
391         case OneofFieldOneofCase.OneofBool:
392           OneofBool = other.OneofBool;
393           break;
394         case OneofFieldOneofCase.OneofUint64:
395           OneofUint64 = other.OneofUint64;
396           break;
397         case OneofFieldOneofCase.OneofFloat:
398           OneofFloat = other.OneofFloat;
399           break;
400         case OneofFieldOneofCase.OneofDouble:
401           OneofDouble = other.OneofDouble;
402           break;
403         case OneofFieldOneofCase.OneofEnum:
404           OneofEnum = other.OneofEnum;
405           break;
406       }
407
408       _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
409     }
410
411     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
412     public TestAllTypesProto3 Clone() {
413       return new TestAllTypesProto3(this);
414     }
415
416     /// <summary>Field number for the "optional_int32" field.</summary>
417     public const int OptionalInt32FieldNumber = 1;
418     private int optionalInt32_;
419     /// <summary>
420     /// Singular
421     /// </summary>
422     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
423     public int OptionalInt32 {
424       get { return optionalInt32_; }
425       set {
426         optionalInt32_ = value;
427       }
428     }
429
430     /// <summary>Field number for the "optional_int64" field.</summary>
431     public const int OptionalInt64FieldNumber = 2;
432     private long optionalInt64_;
433     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
434     public long OptionalInt64 {
435       get { return optionalInt64_; }
436       set {
437         optionalInt64_ = value;
438       }
439     }
440
441     /// <summary>Field number for the "optional_uint32" field.</summary>
442     public const int OptionalUint32FieldNumber = 3;
443     private uint optionalUint32_;
444     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
445     public uint OptionalUint32 {
446       get { return optionalUint32_; }
447       set {
448         optionalUint32_ = value;
449       }
450     }
451
452     /// <summary>Field number for the "optional_uint64" field.</summary>
453     public const int OptionalUint64FieldNumber = 4;
454     private ulong optionalUint64_;
455     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
456     public ulong OptionalUint64 {
457       get { return optionalUint64_; }
458       set {
459         optionalUint64_ = value;
460       }
461     }
462
463     /// <summary>Field number for the "optional_sint32" field.</summary>
464     public const int OptionalSint32FieldNumber = 5;
465     private int optionalSint32_;
466     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
467     public int OptionalSint32 {
468       get { return optionalSint32_; }
469       set {
470         optionalSint32_ = value;
471       }
472     }
473
474     /// <summary>Field number for the "optional_sint64" field.</summary>
475     public const int OptionalSint64FieldNumber = 6;
476     private long optionalSint64_;
477     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
478     public long OptionalSint64 {
479       get { return optionalSint64_; }
480       set {
481         optionalSint64_ = value;
482       }
483     }
484
485     /// <summary>Field number for the "optional_fixed32" field.</summary>
486     public const int OptionalFixed32FieldNumber = 7;
487     private uint optionalFixed32_;
488     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
489     public uint OptionalFixed32 {
490       get { return optionalFixed32_; }
491       set {
492         optionalFixed32_ = value;
493       }
494     }
495
496     /// <summary>Field number for the "optional_fixed64" field.</summary>
497     public const int OptionalFixed64FieldNumber = 8;
498     private ulong optionalFixed64_;
499     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
500     public ulong OptionalFixed64 {
501       get { return optionalFixed64_; }
502       set {
503         optionalFixed64_ = value;
504       }
505     }
506
507     /// <summary>Field number for the "optional_sfixed32" field.</summary>
508     public const int OptionalSfixed32FieldNumber = 9;
509     private int optionalSfixed32_;
510     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
511     public int OptionalSfixed32 {
512       get { return optionalSfixed32_; }
513       set {
514         optionalSfixed32_ = value;
515       }
516     }
517
518     /// <summary>Field number for the "optional_sfixed64" field.</summary>
519     public const int OptionalSfixed64FieldNumber = 10;
520     private long optionalSfixed64_;
521     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
522     public long OptionalSfixed64 {
523       get { return optionalSfixed64_; }
524       set {
525         optionalSfixed64_ = value;
526       }
527     }
528
529     /// <summary>Field number for the "optional_float" field.</summary>
530     public const int OptionalFloatFieldNumber = 11;
531     private float optionalFloat_;
532     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
533     public float OptionalFloat {
534       get { return optionalFloat_; }
535       set {
536         optionalFloat_ = value;
537       }
538     }
539
540     /// <summary>Field number for the "optional_double" field.</summary>
541     public const int OptionalDoubleFieldNumber = 12;
542     private double optionalDouble_;
543     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
544     public double OptionalDouble {
545       get { return optionalDouble_; }
546       set {
547         optionalDouble_ = value;
548       }
549     }
550
551     /// <summary>Field number for the "optional_bool" field.</summary>
552     public const int OptionalBoolFieldNumber = 13;
553     private bool optionalBool_;
554     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
555     public bool OptionalBool {
556       get { return optionalBool_; }
557       set {
558         optionalBool_ = value;
559       }
560     }
561
562     /// <summary>Field number for the "optional_string" field.</summary>
563     public const int OptionalStringFieldNumber = 14;
564     private string optionalString_ = "";
565     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
566     public string OptionalString {
567       get { return optionalString_; }
568       set {
569         optionalString_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
570       }
571     }
572
573     /// <summary>Field number for the "optional_bytes" field.</summary>
574     public const int OptionalBytesFieldNumber = 15;
575     private pb::ByteString optionalBytes_ = pb::ByteString.Empty;
576     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
577     public pb::ByteString OptionalBytes {
578       get { return optionalBytes_; }
579       set {
580         optionalBytes_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
581       }
582     }
583
584     /// <summary>Field number for the "optional_nested_message" field.</summary>
585     public const int OptionalNestedMessageFieldNumber = 18;
586     private global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedMessage optionalNestedMessage_;
587     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
588     public global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedMessage OptionalNestedMessage {
589       get { return optionalNestedMessage_; }
590       set {
591         optionalNestedMessage_ = value;
592       }
593     }
594
595     /// <summary>Field number for the "optional_foreign_message" field.</summary>
596     public const int OptionalForeignMessageFieldNumber = 19;
597     private global::ProtobufTestMessages.Proto3.ForeignMessage optionalForeignMessage_;
598     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
599     public global::ProtobufTestMessages.Proto3.ForeignMessage OptionalForeignMessage {
600       get { return optionalForeignMessage_; }
601       set {
602         optionalForeignMessage_ = value;
603       }
604     }
605
606     /// <summary>Field number for the "optional_nested_enum" field.</summary>
607     public const int OptionalNestedEnumFieldNumber = 21;
608     private global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedEnum optionalNestedEnum_ = 0;
609     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
610     public global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedEnum OptionalNestedEnum {
611       get { return optionalNestedEnum_; }
612       set {
613         optionalNestedEnum_ = value;
614       }
615     }
616
617     /// <summary>Field number for the "optional_foreign_enum" field.</summary>
618     public const int OptionalForeignEnumFieldNumber = 22;
619     private global::ProtobufTestMessages.Proto3.ForeignEnum optionalForeignEnum_ = 0;
620     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
621     public global::ProtobufTestMessages.Proto3.ForeignEnum OptionalForeignEnum {
622       get { return optionalForeignEnum_; }
623       set {
624         optionalForeignEnum_ = value;
625       }
626     }
627
628     /// <summary>Field number for the "optional_aliased_enum" field.</summary>
629     public const int OptionalAliasedEnumFieldNumber = 23;
630     private global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.AliasedEnum optionalAliasedEnum_ = 0;
631     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
632     public global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.AliasedEnum OptionalAliasedEnum {
633       get { return optionalAliasedEnum_; }
634       set {
635         optionalAliasedEnum_ = value;
636       }
637     }
638
639     /// <summary>Field number for the "optional_string_piece" field.</summary>
640     public const int OptionalStringPieceFieldNumber = 24;
641     private string optionalStringPiece_ = "";
642     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
643     public string OptionalStringPiece {
644       get { return optionalStringPiece_; }
645       set {
646         optionalStringPiece_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
647       }
648     }
649
650     /// <summary>Field number for the "optional_cord" field.</summary>
651     public const int OptionalCordFieldNumber = 25;
652     private string optionalCord_ = "";
653     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
654     public string OptionalCord {
655       get { return optionalCord_; }
656       set {
657         optionalCord_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
658       }
659     }
660
661     /// <summary>Field number for the "recursive_message" field.</summary>
662     public const int RecursiveMessageFieldNumber = 27;
663     private global::ProtobufTestMessages.Proto3.TestAllTypesProto3 recursiveMessage_;
664     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
665     public global::ProtobufTestMessages.Proto3.TestAllTypesProto3 RecursiveMessage {
666       get { return recursiveMessage_; }
667       set {
668         recursiveMessage_ = value;
669       }
670     }
671
672     /// <summary>Field number for the "repeated_int32" field.</summary>
673     public const int RepeatedInt32FieldNumber = 31;
674     private static readonly pb::FieldCodec<int> _repeated_repeatedInt32_codec
675         = pb::FieldCodec.ForInt32(250);
676     private readonly pbc::RepeatedField<int> repeatedInt32_ = new pbc::RepeatedField<int>();
677     /// <summary>
678     /// Repeated
679     /// </summary>
680     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
681     public pbc::RepeatedField<int> RepeatedInt32 {
682       get { return repeatedInt32_; }
683     }
684
685     /// <summary>Field number for the "repeated_int64" field.</summary>
686     public const int RepeatedInt64FieldNumber = 32;
687     private static readonly pb::FieldCodec<long> _repeated_repeatedInt64_codec
688         = pb::FieldCodec.ForInt64(258);
689     private readonly pbc::RepeatedField<long> repeatedInt64_ = new pbc::RepeatedField<long>();
690     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
691     public pbc::RepeatedField<long> RepeatedInt64 {
692       get { return repeatedInt64_; }
693     }
694
695     /// <summary>Field number for the "repeated_uint32" field.</summary>
696     public const int RepeatedUint32FieldNumber = 33;
697     private static readonly pb::FieldCodec<uint> _repeated_repeatedUint32_codec
698         = pb::FieldCodec.ForUInt32(266);
699     private readonly pbc::RepeatedField<uint> repeatedUint32_ = new pbc::RepeatedField<uint>();
700     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
701     public pbc::RepeatedField<uint> RepeatedUint32 {
702       get { return repeatedUint32_; }
703     }
704
705     /// <summary>Field number for the "repeated_uint64" field.</summary>
706     public const int RepeatedUint64FieldNumber = 34;
707     private static readonly pb::FieldCodec<ulong> _repeated_repeatedUint64_codec
708         = pb::FieldCodec.ForUInt64(274);
709     private readonly pbc::RepeatedField<ulong> repeatedUint64_ = new pbc::RepeatedField<ulong>();
710     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
711     public pbc::RepeatedField<ulong> RepeatedUint64 {
712       get { return repeatedUint64_; }
713     }
714
715     /// <summary>Field number for the "repeated_sint32" field.</summary>
716     public const int RepeatedSint32FieldNumber = 35;
717     private static readonly pb::FieldCodec<int> _repeated_repeatedSint32_codec
718         = pb::FieldCodec.ForSInt32(282);
719     private readonly pbc::RepeatedField<int> repeatedSint32_ = new pbc::RepeatedField<int>();
720     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
721     public pbc::RepeatedField<int> RepeatedSint32 {
722       get { return repeatedSint32_; }
723     }
724
725     /// <summary>Field number for the "repeated_sint64" field.</summary>
726     public const int RepeatedSint64FieldNumber = 36;
727     private static readonly pb::FieldCodec<long> _repeated_repeatedSint64_codec
728         = pb::FieldCodec.ForSInt64(290);
729     private readonly pbc::RepeatedField<long> repeatedSint64_ = new pbc::RepeatedField<long>();
730     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
731     public pbc::RepeatedField<long> RepeatedSint64 {
732       get { return repeatedSint64_; }
733     }
734
735     /// <summary>Field number for the "repeated_fixed32" field.</summary>
736     public const int RepeatedFixed32FieldNumber = 37;
737     private static readonly pb::FieldCodec<uint> _repeated_repeatedFixed32_codec
738         = pb::FieldCodec.ForFixed32(298);
739     private readonly pbc::RepeatedField<uint> repeatedFixed32_ = new pbc::RepeatedField<uint>();
740     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
741     public pbc::RepeatedField<uint> RepeatedFixed32 {
742       get { return repeatedFixed32_; }
743     }
744
745     /// <summary>Field number for the "repeated_fixed64" field.</summary>
746     public const int RepeatedFixed64FieldNumber = 38;
747     private static readonly pb::FieldCodec<ulong> _repeated_repeatedFixed64_codec
748         = pb::FieldCodec.ForFixed64(306);
749     private readonly pbc::RepeatedField<ulong> repeatedFixed64_ = new pbc::RepeatedField<ulong>();
750     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
751     public pbc::RepeatedField<ulong> RepeatedFixed64 {
752       get { return repeatedFixed64_; }
753     }
754
755     /// <summary>Field number for the "repeated_sfixed32" field.</summary>
756     public const int RepeatedSfixed32FieldNumber = 39;
757     private static readonly pb::FieldCodec<int> _repeated_repeatedSfixed32_codec
758         = pb::FieldCodec.ForSFixed32(314);
759     private readonly pbc::RepeatedField<int> repeatedSfixed32_ = new pbc::RepeatedField<int>();
760     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
761     public pbc::RepeatedField<int> RepeatedSfixed32 {
762       get { return repeatedSfixed32_; }
763     }
764
765     /// <summary>Field number for the "repeated_sfixed64" field.</summary>
766     public const int RepeatedSfixed64FieldNumber = 40;
767     private static readonly pb::FieldCodec<long> _repeated_repeatedSfixed64_codec
768         = pb::FieldCodec.ForSFixed64(322);
769     private readonly pbc::RepeatedField<long> repeatedSfixed64_ = new pbc::RepeatedField<long>();
770     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
771     public pbc::RepeatedField<long> RepeatedSfixed64 {
772       get { return repeatedSfixed64_; }
773     }
774
775     /// <summary>Field number for the "repeated_float" field.</summary>
776     public const int RepeatedFloatFieldNumber = 41;
777     private static readonly pb::FieldCodec<float> _repeated_repeatedFloat_codec
778         = pb::FieldCodec.ForFloat(330);
779     private readonly pbc::RepeatedField<float> repeatedFloat_ = new pbc::RepeatedField<float>();
780     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
781     public pbc::RepeatedField<float> RepeatedFloat {
782       get { return repeatedFloat_; }
783     }
784
785     /// <summary>Field number for the "repeated_double" field.</summary>
786     public const int RepeatedDoubleFieldNumber = 42;
787     private static readonly pb::FieldCodec<double> _repeated_repeatedDouble_codec
788         = pb::FieldCodec.ForDouble(338);
789     private readonly pbc::RepeatedField<double> repeatedDouble_ = new pbc::RepeatedField<double>();
790     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
791     public pbc::RepeatedField<double> RepeatedDouble {
792       get { return repeatedDouble_; }
793     }
794
795     /// <summary>Field number for the "repeated_bool" field.</summary>
796     public const int RepeatedBoolFieldNumber = 43;
797     private static readonly pb::FieldCodec<bool> _repeated_repeatedBool_codec
798         = pb::FieldCodec.ForBool(346);
799     private readonly pbc::RepeatedField<bool> repeatedBool_ = new pbc::RepeatedField<bool>();
800     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
801     public pbc::RepeatedField<bool> RepeatedBool {
802       get { return repeatedBool_; }
803     }
804
805     /// <summary>Field number for the "repeated_string" field.</summary>
806     public const int RepeatedStringFieldNumber = 44;
807     private static readonly pb::FieldCodec<string> _repeated_repeatedString_codec
808         = pb::FieldCodec.ForString(354);
809     private readonly pbc::RepeatedField<string> repeatedString_ = new pbc::RepeatedField<string>();
810     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
811     public pbc::RepeatedField<string> RepeatedString {
812       get { return repeatedString_; }
813     }
814
815     /// <summary>Field number for the "repeated_bytes" field.</summary>
816     public const int RepeatedBytesFieldNumber = 45;
817     private static readonly pb::FieldCodec<pb::ByteString> _repeated_repeatedBytes_codec
818         = pb::FieldCodec.ForBytes(362);
819     private readonly pbc::RepeatedField<pb::ByteString> repeatedBytes_ = new pbc::RepeatedField<pb::ByteString>();
820     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
821     public pbc::RepeatedField<pb::ByteString> RepeatedBytes {
822       get { return repeatedBytes_; }
823     }
824
825     /// <summary>Field number for the "repeated_nested_message" field.</summary>
826     public const int RepeatedNestedMessageFieldNumber = 48;
827     private static readonly pb::FieldCodec<global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedMessage> _repeated_repeatedNestedMessage_codec
828         = pb::FieldCodec.ForMessage(386, global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedMessage.Parser);
829     private readonly pbc::RepeatedField<global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedMessage> repeatedNestedMessage_ = new pbc::RepeatedField<global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedMessage>();
830     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
831     public pbc::RepeatedField<global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedMessage> RepeatedNestedMessage {
832       get { return repeatedNestedMessage_; }
833     }
834
835     /// <summary>Field number for the "repeated_foreign_message" field.</summary>
836     public const int RepeatedForeignMessageFieldNumber = 49;
837     private static readonly pb::FieldCodec<global::ProtobufTestMessages.Proto3.ForeignMessage> _repeated_repeatedForeignMessage_codec
838         = pb::FieldCodec.ForMessage(394, global::ProtobufTestMessages.Proto3.ForeignMessage.Parser);
839     private readonly pbc::RepeatedField<global::ProtobufTestMessages.Proto3.ForeignMessage> repeatedForeignMessage_ = new pbc::RepeatedField<global::ProtobufTestMessages.Proto3.ForeignMessage>();
840     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
841     public pbc::RepeatedField<global::ProtobufTestMessages.Proto3.ForeignMessage> RepeatedForeignMessage {
842       get { return repeatedForeignMessage_; }
843     }
844
845     /// <summary>Field number for the "repeated_nested_enum" field.</summary>
846     public const int RepeatedNestedEnumFieldNumber = 51;
847     private static readonly pb::FieldCodec<global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedEnum> _repeated_repeatedNestedEnum_codec
848         = pb::FieldCodec.ForEnum(410, x => (int) x, x => (global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedEnum) x);
849     private readonly pbc::RepeatedField<global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedEnum> repeatedNestedEnum_ = new pbc::RepeatedField<global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedEnum>();
850     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
851     public pbc::RepeatedField<global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedEnum> RepeatedNestedEnum {
852       get { return repeatedNestedEnum_; }
853     }
854
855     /// <summary>Field number for the "repeated_foreign_enum" field.</summary>
856     public const int RepeatedForeignEnumFieldNumber = 52;
857     private static readonly pb::FieldCodec<global::ProtobufTestMessages.Proto3.ForeignEnum> _repeated_repeatedForeignEnum_codec
858         = pb::FieldCodec.ForEnum(418, x => (int) x, x => (global::ProtobufTestMessages.Proto3.ForeignEnum) x);
859     private readonly pbc::RepeatedField<global::ProtobufTestMessages.Proto3.ForeignEnum> repeatedForeignEnum_ = new pbc::RepeatedField<global::ProtobufTestMessages.Proto3.ForeignEnum>();
860     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
861     public pbc::RepeatedField<global::ProtobufTestMessages.Proto3.ForeignEnum> RepeatedForeignEnum {
862       get { return repeatedForeignEnum_; }
863     }
864
865     /// <summary>Field number for the "repeated_string_piece" field.</summary>
866     public const int RepeatedStringPieceFieldNumber = 54;
867     private static readonly pb::FieldCodec<string> _repeated_repeatedStringPiece_codec
868         = pb::FieldCodec.ForString(434);
869     private readonly pbc::RepeatedField<string> repeatedStringPiece_ = new pbc::RepeatedField<string>();
870     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
871     public pbc::RepeatedField<string> RepeatedStringPiece {
872       get { return repeatedStringPiece_; }
873     }
874
875     /// <summary>Field number for the "repeated_cord" field.</summary>
876     public const int RepeatedCordFieldNumber = 55;
877     private static readonly pb::FieldCodec<string> _repeated_repeatedCord_codec
878         = pb::FieldCodec.ForString(442);
879     private readonly pbc::RepeatedField<string> repeatedCord_ = new pbc::RepeatedField<string>();
880     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
881     public pbc::RepeatedField<string> RepeatedCord {
882       get { return repeatedCord_; }
883     }
884
885     /// <summary>Field number for the "map_int32_int32" field.</summary>
886     public const int MapInt32Int32FieldNumber = 56;
887     private static readonly pbc::MapField<int, int>.Codec _map_mapInt32Int32_codec
888         = new pbc::MapField<int, int>.Codec(pb::FieldCodec.ForInt32(8), pb::FieldCodec.ForInt32(16), 450);
889     private readonly pbc::MapField<int, int> mapInt32Int32_ = new pbc::MapField<int, int>();
890     /// <summary>
891     /// Map
892     /// </summary>
893     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
894     public pbc::MapField<int, int> MapInt32Int32 {
895       get { return mapInt32Int32_; }
896     }
897
898     /// <summary>Field number for the "map_int64_int64" field.</summary>
899     public const int MapInt64Int64FieldNumber = 57;
900     private static readonly pbc::MapField<long, long>.Codec _map_mapInt64Int64_codec
901         = new pbc::MapField<long, long>.Codec(pb::FieldCodec.ForInt64(8), pb::FieldCodec.ForInt64(16), 458);
902     private readonly pbc::MapField<long, long> mapInt64Int64_ = new pbc::MapField<long, long>();
903     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
904     public pbc::MapField<long, long> MapInt64Int64 {
905       get { return mapInt64Int64_; }
906     }
907
908     /// <summary>Field number for the "map_uint32_uint32" field.</summary>
909     public const int MapUint32Uint32FieldNumber = 58;
910     private static readonly pbc::MapField<uint, uint>.Codec _map_mapUint32Uint32_codec
911         = new pbc::MapField<uint, uint>.Codec(pb::FieldCodec.ForUInt32(8), pb::FieldCodec.ForUInt32(16), 466);
912     private readonly pbc::MapField<uint, uint> mapUint32Uint32_ = new pbc::MapField<uint, uint>();
913     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
914     public pbc::MapField<uint, uint> MapUint32Uint32 {
915       get { return mapUint32Uint32_; }
916     }
917
918     /// <summary>Field number for the "map_uint64_uint64" field.</summary>
919     public const int MapUint64Uint64FieldNumber = 59;
920     private static readonly pbc::MapField<ulong, ulong>.Codec _map_mapUint64Uint64_codec
921         = new pbc::MapField<ulong, ulong>.Codec(pb::FieldCodec.ForUInt64(8), pb::FieldCodec.ForUInt64(16), 474);
922     private readonly pbc::MapField<ulong, ulong> mapUint64Uint64_ = new pbc::MapField<ulong, ulong>();
923     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
924     public pbc::MapField<ulong, ulong> MapUint64Uint64 {
925       get { return mapUint64Uint64_; }
926     }
927
928     /// <summary>Field number for the "map_sint32_sint32" field.</summary>
929     public const int MapSint32Sint32FieldNumber = 60;
930     private static readonly pbc::MapField<int, int>.Codec _map_mapSint32Sint32_codec
931         = new pbc::MapField<int, int>.Codec(pb::FieldCodec.ForSInt32(8), pb::FieldCodec.ForSInt32(16), 482);
932     private readonly pbc::MapField<int, int> mapSint32Sint32_ = new pbc::MapField<int, int>();
933     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
934     public pbc::MapField<int, int> MapSint32Sint32 {
935       get { return mapSint32Sint32_; }
936     }
937
938     /// <summary>Field number for the "map_sint64_sint64" field.</summary>
939     public const int MapSint64Sint64FieldNumber = 61;
940     private static readonly pbc::MapField<long, long>.Codec _map_mapSint64Sint64_codec
941         = new pbc::MapField<long, long>.Codec(pb::FieldCodec.ForSInt64(8), pb::FieldCodec.ForSInt64(16), 490);
942     private readonly pbc::MapField<long, long> mapSint64Sint64_ = new pbc::MapField<long, long>();
943     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
944     public pbc::MapField<long, long> MapSint64Sint64 {
945       get { return mapSint64Sint64_; }
946     }
947
948     /// <summary>Field number for the "map_fixed32_fixed32" field.</summary>
949     public const int MapFixed32Fixed32FieldNumber = 62;
950     private static readonly pbc::MapField<uint, uint>.Codec _map_mapFixed32Fixed32_codec
951         = new pbc::MapField<uint, uint>.Codec(pb::FieldCodec.ForFixed32(13), pb::FieldCodec.ForFixed32(21), 498);
952     private readonly pbc::MapField<uint, uint> mapFixed32Fixed32_ = new pbc::MapField<uint, uint>();
953     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
954     public pbc::MapField<uint, uint> MapFixed32Fixed32 {
955       get { return mapFixed32Fixed32_; }
956     }
957
958     /// <summary>Field number for the "map_fixed64_fixed64" field.</summary>
959     public const int MapFixed64Fixed64FieldNumber = 63;
960     private static readonly pbc::MapField<ulong, ulong>.Codec _map_mapFixed64Fixed64_codec
961         = new pbc::MapField<ulong, ulong>.Codec(pb::FieldCodec.ForFixed64(9), pb::FieldCodec.ForFixed64(17), 506);
962     private readonly pbc::MapField<ulong, ulong> mapFixed64Fixed64_ = new pbc::MapField<ulong, ulong>();
963     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
964     public pbc::MapField<ulong, ulong> MapFixed64Fixed64 {
965       get { return mapFixed64Fixed64_; }
966     }
967
968     /// <summary>Field number for the "map_sfixed32_sfixed32" field.</summary>
969     public const int MapSfixed32Sfixed32FieldNumber = 64;
970     private static readonly pbc::MapField<int, int>.Codec _map_mapSfixed32Sfixed32_codec
971         = new pbc::MapField<int, int>.Codec(pb::FieldCodec.ForSFixed32(13), pb::FieldCodec.ForSFixed32(21), 514);
972     private readonly pbc::MapField<int, int> mapSfixed32Sfixed32_ = new pbc::MapField<int, int>();
973     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
974     public pbc::MapField<int, int> MapSfixed32Sfixed32 {
975       get { return mapSfixed32Sfixed32_; }
976     }
977
978     /// <summary>Field number for the "map_sfixed64_sfixed64" field.</summary>
979     public const int MapSfixed64Sfixed64FieldNumber = 65;
980     private static readonly pbc::MapField<long, long>.Codec _map_mapSfixed64Sfixed64_codec
981         = new pbc::MapField<long, long>.Codec(pb::FieldCodec.ForSFixed64(9), pb::FieldCodec.ForSFixed64(17), 522);
982     private readonly pbc::MapField<long, long> mapSfixed64Sfixed64_ = new pbc::MapField<long, long>();
983     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
984     public pbc::MapField<long, long> MapSfixed64Sfixed64 {
985       get { return mapSfixed64Sfixed64_; }
986     }
987
988     /// <summary>Field number for the "map_int32_float" field.</summary>
989     public const int MapInt32FloatFieldNumber = 66;
990     private static readonly pbc::MapField<int, float>.Codec _map_mapInt32Float_codec
991         = new pbc::MapField<int, float>.Codec(pb::FieldCodec.ForInt32(8), pb::FieldCodec.ForFloat(21), 530);
992     private readonly pbc::MapField<int, float> mapInt32Float_ = new pbc::MapField<int, float>();
993     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
994     public pbc::MapField<int, float> MapInt32Float {
995       get { return mapInt32Float_; }
996     }
997
998     /// <summary>Field number for the "map_int32_double" field.</summary>
999     public const int MapInt32DoubleFieldNumber = 67;
1000     private static readonly pbc::MapField<int, double>.Codec _map_mapInt32Double_codec
1001         = new pbc::MapField<int, double>.Codec(pb::FieldCodec.ForInt32(8), pb::FieldCodec.ForDouble(17), 538);
1002     private readonly pbc::MapField<int, double> mapInt32Double_ = new pbc::MapField<int, double>();
1003     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1004     public pbc::MapField<int, double> MapInt32Double {
1005       get { return mapInt32Double_; }
1006     }
1007
1008     /// <summary>Field number for the "map_bool_bool" field.</summary>
1009     public const int MapBoolBoolFieldNumber = 68;
1010     private static readonly pbc::MapField<bool, bool>.Codec _map_mapBoolBool_codec
1011         = new pbc::MapField<bool, bool>.Codec(pb::FieldCodec.ForBool(8), pb::FieldCodec.ForBool(16), 546);
1012     private readonly pbc::MapField<bool, bool> mapBoolBool_ = new pbc::MapField<bool, bool>();
1013     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1014     public pbc::MapField<bool, bool> MapBoolBool {
1015       get { return mapBoolBool_; }
1016     }
1017
1018     /// <summary>Field number for the "map_string_string" field.</summary>
1019     public const int MapStringStringFieldNumber = 69;
1020     private static readonly pbc::MapField<string, string>.Codec _map_mapStringString_codec
1021         = new pbc::MapField<string, string>.Codec(pb::FieldCodec.ForString(10), pb::FieldCodec.ForString(18), 554);
1022     private readonly pbc::MapField<string, string> mapStringString_ = new pbc::MapField<string, string>();
1023     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1024     public pbc::MapField<string, string> MapStringString {
1025       get { return mapStringString_; }
1026     }
1027
1028     /// <summary>Field number for the "map_string_bytes" field.</summary>
1029     public const int MapStringBytesFieldNumber = 70;
1030     private static readonly pbc::MapField<string, pb::ByteString>.Codec _map_mapStringBytes_codec
1031         = new pbc::MapField<string, pb::ByteString>.Codec(pb::FieldCodec.ForString(10), pb::FieldCodec.ForBytes(18), 562);
1032     private readonly pbc::MapField<string, pb::ByteString> mapStringBytes_ = new pbc::MapField<string, pb::ByteString>();
1033     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1034     public pbc::MapField<string, pb::ByteString> MapStringBytes {
1035       get { return mapStringBytes_; }
1036     }
1037
1038     /// <summary>Field number for the "map_string_nested_message" field.</summary>
1039     public const int MapStringNestedMessageFieldNumber = 71;
1040     private static readonly pbc::MapField<string, global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedMessage>.Codec _map_mapStringNestedMessage_codec
1041         = new pbc::MapField<string, global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedMessage>.Codec(pb::FieldCodec.ForString(10), pb::FieldCodec.ForMessage(18, global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedMessage.Parser), 570);
1042     private readonly pbc::MapField<string, global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedMessage> mapStringNestedMessage_ = new pbc::MapField<string, global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedMessage>();
1043     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1044     public pbc::MapField<string, global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedMessage> MapStringNestedMessage {
1045       get { return mapStringNestedMessage_; }
1046     }
1047
1048     /// <summary>Field number for the "map_string_foreign_message" field.</summary>
1049     public const int MapStringForeignMessageFieldNumber = 72;
1050     private static readonly pbc::MapField<string, global::ProtobufTestMessages.Proto3.ForeignMessage>.Codec _map_mapStringForeignMessage_codec
1051         = new pbc::MapField<string, global::ProtobufTestMessages.Proto3.ForeignMessage>.Codec(pb::FieldCodec.ForString(10), pb::FieldCodec.ForMessage(18, global::ProtobufTestMessages.Proto3.ForeignMessage.Parser), 578);
1052     private readonly pbc::MapField<string, global::ProtobufTestMessages.Proto3.ForeignMessage> mapStringForeignMessage_ = new pbc::MapField<string, global::ProtobufTestMessages.Proto3.ForeignMessage>();
1053     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1054     public pbc::MapField<string, global::ProtobufTestMessages.Proto3.ForeignMessage> MapStringForeignMessage {
1055       get { return mapStringForeignMessage_; }
1056     }
1057
1058     /// <summary>Field number for the "map_string_nested_enum" field.</summary>
1059     public const int MapStringNestedEnumFieldNumber = 73;
1060     private static readonly pbc::MapField<string, global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedEnum>.Codec _map_mapStringNestedEnum_codec
1061         = new pbc::MapField<string, global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedEnum>.Codec(pb::FieldCodec.ForString(10), pb::FieldCodec.ForEnum(16, x => (int) x, x => (global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedEnum) x), 586);
1062     private readonly pbc::MapField<string, global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedEnum> mapStringNestedEnum_ = new pbc::MapField<string, global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedEnum>();
1063     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1064     public pbc::MapField<string, global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedEnum> MapStringNestedEnum {
1065       get { return mapStringNestedEnum_; }
1066     }
1067
1068     /// <summary>Field number for the "map_string_foreign_enum" field.</summary>
1069     public const int MapStringForeignEnumFieldNumber = 74;
1070     private static readonly pbc::MapField<string, global::ProtobufTestMessages.Proto3.ForeignEnum>.Codec _map_mapStringForeignEnum_codec
1071         = new pbc::MapField<string, global::ProtobufTestMessages.Proto3.ForeignEnum>.Codec(pb::FieldCodec.ForString(10), pb::FieldCodec.ForEnum(16, x => (int) x, x => (global::ProtobufTestMessages.Proto3.ForeignEnum) x), 594);
1072     private readonly pbc::MapField<string, global::ProtobufTestMessages.Proto3.ForeignEnum> mapStringForeignEnum_ = new pbc::MapField<string, global::ProtobufTestMessages.Proto3.ForeignEnum>();
1073     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1074     public pbc::MapField<string, global::ProtobufTestMessages.Proto3.ForeignEnum> MapStringForeignEnum {
1075       get { return mapStringForeignEnum_; }
1076     }
1077
1078     /// <summary>Field number for the "oneof_uint32" field.</summary>
1079     public const int OneofUint32FieldNumber = 111;
1080     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1081     public uint OneofUint32 {
1082       get { return oneofFieldCase_ == OneofFieldOneofCase.OneofUint32 ? (uint) oneofField_ : 0; }
1083       set {
1084         oneofField_ = value;
1085         oneofFieldCase_ = OneofFieldOneofCase.OneofUint32;
1086       }
1087     }
1088
1089     /// <summary>Field number for the "oneof_nested_message" field.</summary>
1090     public const int OneofNestedMessageFieldNumber = 112;
1091     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1092     public global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedMessage OneofNestedMessage {
1093       get { return oneofFieldCase_ == OneofFieldOneofCase.OneofNestedMessage ? (global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedMessage) oneofField_ : null; }
1094       set {
1095         oneofField_ = value;
1096         oneofFieldCase_ = value == null ? OneofFieldOneofCase.None : OneofFieldOneofCase.OneofNestedMessage;
1097       }
1098     }
1099
1100     /// <summary>Field number for the "oneof_string" field.</summary>
1101     public const int OneofStringFieldNumber = 113;
1102     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1103     public string OneofString {
1104       get { return oneofFieldCase_ == OneofFieldOneofCase.OneofString ? (string) oneofField_ : ""; }
1105       set {
1106         oneofField_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
1107         oneofFieldCase_ = OneofFieldOneofCase.OneofString;
1108       }
1109     }
1110
1111     /// <summary>Field number for the "oneof_bytes" field.</summary>
1112     public const int OneofBytesFieldNumber = 114;
1113     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1114     public pb::ByteString OneofBytes {
1115       get { return oneofFieldCase_ == OneofFieldOneofCase.OneofBytes ? (pb::ByteString) oneofField_ : pb::ByteString.Empty; }
1116       set {
1117         oneofField_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
1118         oneofFieldCase_ = OneofFieldOneofCase.OneofBytes;
1119       }
1120     }
1121
1122     /// <summary>Field number for the "oneof_bool" field.</summary>
1123     public const int OneofBoolFieldNumber = 115;
1124     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1125     public bool OneofBool {
1126       get { return oneofFieldCase_ == OneofFieldOneofCase.OneofBool ? (bool) oneofField_ : false; }
1127       set {
1128         oneofField_ = value;
1129         oneofFieldCase_ = OneofFieldOneofCase.OneofBool;
1130       }
1131     }
1132
1133     /// <summary>Field number for the "oneof_uint64" field.</summary>
1134     public const int OneofUint64FieldNumber = 116;
1135     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1136     public ulong OneofUint64 {
1137       get { return oneofFieldCase_ == OneofFieldOneofCase.OneofUint64 ? (ulong) oneofField_ : 0UL; }
1138       set {
1139         oneofField_ = value;
1140         oneofFieldCase_ = OneofFieldOneofCase.OneofUint64;
1141       }
1142     }
1143
1144     /// <summary>Field number for the "oneof_float" field.</summary>
1145     public const int OneofFloatFieldNumber = 117;
1146     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1147     public float OneofFloat {
1148       get { return oneofFieldCase_ == OneofFieldOneofCase.OneofFloat ? (float) oneofField_ : 0F; }
1149       set {
1150         oneofField_ = value;
1151         oneofFieldCase_ = OneofFieldOneofCase.OneofFloat;
1152       }
1153     }
1154
1155     /// <summary>Field number for the "oneof_double" field.</summary>
1156     public const int OneofDoubleFieldNumber = 118;
1157     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1158     public double OneofDouble {
1159       get { return oneofFieldCase_ == OneofFieldOneofCase.OneofDouble ? (double) oneofField_ : 0D; }
1160       set {
1161         oneofField_ = value;
1162         oneofFieldCase_ = OneofFieldOneofCase.OneofDouble;
1163       }
1164     }
1165
1166     /// <summary>Field number for the "oneof_enum" field.</summary>
1167     public const int OneofEnumFieldNumber = 119;
1168     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1169     public global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedEnum OneofEnum {
1170       get { return oneofFieldCase_ == OneofFieldOneofCase.OneofEnum ? (global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedEnum) oneofField_ : 0; }
1171       set {
1172         oneofField_ = value;
1173         oneofFieldCase_ = OneofFieldOneofCase.OneofEnum;
1174       }
1175     }
1176
1177     /// <summary>Field number for the "optional_bool_wrapper" field.</summary>
1178     public const int OptionalBoolWrapperFieldNumber = 201;
1179     private static readonly pb::FieldCodec<bool?> _single_optionalBoolWrapper_codec = pb::FieldCodec.ForStructWrapper<bool>(1610);
1180     private bool? optionalBoolWrapper_;
1181     /// <summary>
1182     /// Well-known types
1183     /// </summary>
1184     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1185     public bool? OptionalBoolWrapper {
1186       get { return optionalBoolWrapper_; }
1187       set {
1188         optionalBoolWrapper_ = value;
1189       }
1190     }
1191
1192
1193     /// <summary>Field number for the "optional_int32_wrapper" field.</summary>
1194     public const int OptionalInt32WrapperFieldNumber = 202;
1195     private static readonly pb::FieldCodec<int?> _single_optionalInt32Wrapper_codec = pb::FieldCodec.ForStructWrapper<int>(1618);
1196     private int? optionalInt32Wrapper_;
1197     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1198     public int? OptionalInt32Wrapper {
1199       get { return optionalInt32Wrapper_; }
1200       set {
1201         optionalInt32Wrapper_ = value;
1202       }
1203     }
1204
1205
1206     /// <summary>Field number for the "optional_int64_wrapper" field.</summary>
1207     public const int OptionalInt64WrapperFieldNumber = 203;
1208     private static readonly pb::FieldCodec<long?> _single_optionalInt64Wrapper_codec = pb::FieldCodec.ForStructWrapper<long>(1626);
1209     private long? optionalInt64Wrapper_;
1210     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1211     public long? OptionalInt64Wrapper {
1212       get { return optionalInt64Wrapper_; }
1213       set {
1214         optionalInt64Wrapper_ = value;
1215       }
1216     }
1217
1218
1219     /// <summary>Field number for the "optional_uint32_wrapper" field.</summary>
1220     public const int OptionalUint32WrapperFieldNumber = 204;
1221     private static readonly pb::FieldCodec<uint?> _single_optionalUint32Wrapper_codec = pb::FieldCodec.ForStructWrapper<uint>(1634);
1222     private uint? optionalUint32Wrapper_;
1223     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1224     public uint? OptionalUint32Wrapper {
1225       get { return optionalUint32Wrapper_; }
1226       set {
1227         optionalUint32Wrapper_ = value;
1228       }
1229     }
1230
1231
1232     /// <summary>Field number for the "optional_uint64_wrapper" field.</summary>
1233     public const int OptionalUint64WrapperFieldNumber = 205;
1234     private static readonly pb::FieldCodec<ulong?> _single_optionalUint64Wrapper_codec = pb::FieldCodec.ForStructWrapper<ulong>(1642);
1235     private ulong? optionalUint64Wrapper_;
1236     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1237     public ulong? OptionalUint64Wrapper {
1238       get { return optionalUint64Wrapper_; }
1239       set {
1240         optionalUint64Wrapper_ = value;
1241       }
1242     }
1243
1244
1245     /// <summary>Field number for the "optional_float_wrapper" field.</summary>
1246     public const int OptionalFloatWrapperFieldNumber = 206;
1247     private static readonly pb::FieldCodec<float?> _single_optionalFloatWrapper_codec = pb::FieldCodec.ForStructWrapper<float>(1650);
1248     private float? optionalFloatWrapper_;
1249     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1250     public float? OptionalFloatWrapper {
1251       get { return optionalFloatWrapper_; }
1252       set {
1253         optionalFloatWrapper_ = value;
1254       }
1255     }
1256
1257
1258     /// <summary>Field number for the "optional_double_wrapper" field.</summary>
1259     public const int OptionalDoubleWrapperFieldNumber = 207;
1260     private static readonly pb::FieldCodec<double?> _single_optionalDoubleWrapper_codec = pb::FieldCodec.ForStructWrapper<double>(1658);
1261     private double? optionalDoubleWrapper_;
1262     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1263     public double? OptionalDoubleWrapper {
1264       get { return optionalDoubleWrapper_; }
1265       set {
1266         optionalDoubleWrapper_ = value;
1267       }
1268     }
1269
1270
1271     /// <summary>Field number for the "optional_string_wrapper" field.</summary>
1272     public const int OptionalStringWrapperFieldNumber = 208;
1273     private static readonly pb::FieldCodec<string> _single_optionalStringWrapper_codec = pb::FieldCodec.ForClassWrapper<string>(1666);
1274     private string optionalStringWrapper_;
1275     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1276     public string OptionalStringWrapper {
1277       get { return optionalStringWrapper_; }
1278       set {
1279         optionalStringWrapper_ = value;
1280       }
1281     }
1282
1283
1284     /// <summary>Field number for the "optional_bytes_wrapper" field.</summary>
1285     public const int OptionalBytesWrapperFieldNumber = 209;
1286     private static readonly pb::FieldCodec<pb::ByteString> _single_optionalBytesWrapper_codec = pb::FieldCodec.ForClassWrapper<pb::ByteString>(1674);
1287     private pb::ByteString optionalBytesWrapper_;
1288     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1289     public pb::ByteString OptionalBytesWrapper {
1290       get { return optionalBytesWrapper_; }
1291       set {
1292         optionalBytesWrapper_ = value;
1293       }
1294     }
1295
1296
1297     /// <summary>Field number for the "repeated_bool_wrapper" field.</summary>
1298     public const int RepeatedBoolWrapperFieldNumber = 211;
1299     private static readonly pb::FieldCodec<bool?> _repeated_repeatedBoolWrapper_codec
1300         = pb::FieldCodec.ForStructWrapper<bool>(1690);
1301     private readonly pbc::RepeatedField<bool?> repeatedBoolWrapper_ = new pbc::RepeatedField<bool?>();
1302     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1303     public pbc::RepeatedField<bool?> RepeatedBoolWrapper {
1304       get { return repeatedBoolWrapper_; }
1305     }
1306
1307     /// <summary>Field number for the "repeated_int32_wrapper" field.</summary>
1308     public const int RepeatedInt32WrapperFieldNumber = 212;
1309     private static readonly pb::FieldCodec<int?> _repeated_repeatedInt32Wrapper_codec
1310         = pb::FieldCodec.ForStructWrapper<int>(1698);
1311     private readonly pbc::RepeatedField<int?> repeatedInt32Wrapper_ = new pbc::RepeatedField<int?>();
1312     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1313     public pbc::RepeatedField<int?> RepeatedInt32Wrapper {
1314       get { return repeatedInt32Wrapper_; }
1315     }
1316
1317     /// <summary>Field number for the "repeated_int64_wrapper" field.</summary>
1318     public const int RepeatedInt64WrapperFieldNumber = 213;
1319     private static readonly pb::FieldCodec<long?> _repeated_repeatedInt64Wrapper_codec
1320         = pb::FieldCodec.ForStructWrapper<long>(1706);
1321     private readonly pbc::RepeatedField<long?> repeatedInt64Wrapper_ = new pbc::RepeatedField<long?>();
1322     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1323     public pbc::RepeatedField<long?> RepeatedInt64Wrapper {
1324       get { return repeatedInt64Wrapper_; }
1325     }
1326
1327     /// <summary>Field number for the "repeated_uint32_wrapper" field.</summary>
1328     public const int RepeatedUint32WrapperFieldNumber = 214;
1329     private static readonly pb::FieldCodec<uint?> _repeated_repeatedUint32Wrapper_codec
1330         = pb::FieldCodec.ForStructWrapper<uint>(1714);
1331     private readonly pbc::RepeatedField<uint?> repeatedUint32Wrapper_ = new pbc::RepeatedField<uint?>();
1332     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1333     public pbc::RepeatedField<uint?> RepeatedUint32Wrapper {
1334       get { return repeatedUint32Wrapper_; }
1335     }
1336
1337     /// <summary>Field number for the "repeated_uint64_wrapper" field.</summary>
1338     public const int RepeatedUint64WrapperFieldNumber = 215;
1339     private static readonly pb::FieldCodec<ulong?> _repeated_repeatedUint64Wrapper_codec
1340         = pb::FieldCodec.ForStructWrapper<ulong>(1722);
1341     private readonly pbc::RepeatedField<ulong?> repeatedUint64Wrapper_ = new pbc::RepeatedField<ulong?>();
1342     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1343     public pbc::RepeatedField<ulong?> RepeatedUint64Wrapper {
1344       get { return repeatedUint64Wrapper_; }
1345     }
1346
1347     /// <summary>Field number for the "repeated_float_wrapper" field.</summary>
1348     public const int RepeatedFloatWrapperFieldNumber = 216;
1349     private static readonly pb::FieldCodec<float?> _repeated_repeatedFloatWrapper_codec
1350         = pb::FieldCodec.ForStructWrapper<float>(1730);
1351     private readonly pbc::RepeatedField<float?> repeatedFloatWrapper_ = new pbc::RepeatedField<float?>();
1352     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1353     public pbc::RepeatedField<float?> RepeatedFloatWrapper {
1354       get { return repeatedFloatWrapper_; }
1355     }
1356
1357     /// <summary>Field number for the "repeated_double_wrapper" field.</summary>
1358     public const int RepeatedDoubleWrapperFieldNumber = 217;
1359     private static readonly pb::FieldCodec<double?> _repeated_repeatedDoubleWrapper_codec
1360         = pb::FieldCodec.ForStructWrapper<double>(1738);
1361     private readonly pbc::RepeatedField<double?> repeatedDoubleWrapper_ = new pbc::RepeatedField<double?>();
1362     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1363     public pbc::RepeatedField<double?> RepeatedDoubleWrapper {
1364       get { return repeatedDoubleWrapper_; }
1365     }
1366
1367     /// <summary>Field number for the "repeated_string_wrapper" field.</summary>
1368     public const int RepeatedStringWrapperFieldNumber = 218;
1369     private static readonly pb::FieldCodec<string> _repeated_repeatedStringWrapper_codec
1370         = pb::FieldCodec.ForClassWrapper<string>(1746);
1371     private readonly pbc::RepeatedField<string> repeatedStringWrapper_ = new pbc::RepeatedField<string>();
1372     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1373     public pbc::RepeatedField<string> RepeatedStringWrapper {
1374       get { return repeatedStringWrapper_; }
1375     }
1376
1377     /// <summary>Field number for the "repeated_bytes_wrapper" field.</summary>
1378     public const int RepeatedBytesWrapperFieldNumber = 219;
1379     private static readonly pb::FieldCodec<pb::ByteString> _repeated_repeatedBytesWrapper_codec
1380         = pb::FieldCodec.ForClassWrapper<pb::ByteString>(1754);
1381     private readonly pbc::RepeatedField<pb::ByteString> repeatedBytesWrapper_ = new pbc::RepeatedField<pb::ByteString>();
1382     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1383     public pbc::RepeatedField<pb::ByteString> RepeatedBytesWrapper {
1384       get { return repeatedBytesWrapper_; }
1385     }
1386
1387     /// <summary>Field number for the "optional_duration" field.</summary>
1388     public const int OptionalDurationFieldNumber = 301;
1389     private global::Google.Protobuf.WellKnownTypes.Duration optionalDuration_;
1390     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1391     public global::Google.Protobuf.WellKnownTypes.Duration OptionalDuration {
1392       get { return optionalDuration_; }
1393       set {
1394         optionalDuration_ = value;
1395       }
1396     }
1397
1398     /// <summary>Field number for the "optional_timestamp" field.</summary>
1399     public const int OptionalTimestampFieldNumber = 302;
1400     private global::Google.Protobuf.WellKnownTypes.Timestamp optionalTimestamp_;
1401     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1402     public global::Google.Protobuf.WellKnownTypes.Timestamp OptionalTimestamp {
1403       get { return optionalTimestamp_; }
1404       set {
1405         optionalTimestamp_ = value;
1406       }
1407     }
1408
1409     /// <summary>Field number for the "optional_field_mask" field.</summary>
1410     public const int OptionalFieldMaskFieldNumber = 303;
1411     private global::Google.Protobuf.WellKnownTypes.FieldMask optionalFieldMask_;
1412     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1413     public global::Google.Protobuf.WellKnownTypes.FieldMask OptionalFieldMask {
1414       get { return optionalFieldMask_; }
1415       set {
1416         optionalFieldMask_ = value;
1417       }
1418     }
1419
1420     /// <summary>Field number for the "optional_struct" field.</summary>
1421     public const int OptionalStructFieldNumber = 304;
1422     private global::Google.Protobuf.WellKnownTypes.Struct optionalStruct_;
1423     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1424     public global::Google.Protobuf.WellKnownTypes.Struct OptionalStruct {
1425       get { return optionalStruct_; }
1426       set {
1427         optionalStruct_ = value;
1428       }
1429     }
1430
1431     /// <summary>Field number for the "optional_any" field.</summary>
1432     public const int OptionalAnyFieldNumber = 305;
1433     private global::Google.Protobuf.WellKnownTypes.Any optionalAny_;
1434     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1435     public global::Google.Protobuf.WellKnownTypes.Any OptionalAny {
1436       get { return optionalAny_; }
1437       set {
1438         optionalAny_ = value;
1439       }
1440     }
1441
1442     /// <summary>Field number for the "optional_value" field.</summary>
1443     public const int OptionalValueFieldNumber = 306;
1444     private global::Google.Protobuf.WellKnownTypes.Value optionalValue_;
1445     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1446     public global::Google.Protobuf.WellKnownTypes.Value OptionalValue {
1447       get { return optionalValue_; }
1448       set {
1449         optionalValue_ = value;
1450       }
1451     }
1452
1453     /// <summary>Field number for the "repeated_duration" field.</summary>
1454     public const int RepeatedDurationFieldNumber = 311;
1455     private static readonly pb::FieldCodec<global::Google.Protobuf.WellKnownTypes.Duration> _repeated_repeatedDuration_codec
1456         = pb::FieldCodec.ForMessage(2490, global::Google.Protobuf.WellKnownTypes.Duration.Parser);
1457     private readonly pbc::RepeatedField<global::Google.Protobuf.WellKnownTypes.Duration> repeatedDuration_ = new pbc::RepeatedField<global::Google.Protobuf.WellKnownTypes.Duration>();
1458     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1459     public pbc::RepeatedField<global::Google.Protobuf.WellKnownTypes.Duration> RepeatedDuration {
1460       get { return repeatedDuration_; }
1461     }
1462
1463     /// <summary>Field number for the "repeated_timestamp" field.</summary>
1464     public const int RepeatedTimestampFieldNumber = 312;
1465     private static readonly pb::FieldCodec<global::Google.Protobuf.WellKnownTypes.Timestamp> _repeated_repeatedTimestamp_codec
1466         = pb::FieldCodec.ForMessage(2498, global::Google.Protobuf.WellKnownTypes.Timestamp.Parser);
1467     private readonly pbc::RepeatedField<global::Google.Protobuf.WellKnownTypes.Timestamp> repeatedTimestamp_ = new pbc::RepeatedField<global::Google.Protobuf.WellKnownTypes.Timestamp>();
1468     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1469     public pbc::RepeatedField<global::Google.Protobuf.WellKnownTypes.Timestamp> RepeatedTimestamp {
1470       get { return repeatedTimestamp_; }
1471     }
1472
1473     /// <summary>Field number for the "repeated_fieldmask" field.</summary>
1474     public const int RepeatedFieldmaskFieldNumber = 313;
1475     private static readonly pb::FieldCodec<global::Google.Protobuf.WellKnownTypes.FieldMask> _repeated_repeatedFieldmask_codec
1476         = pb::FieldCodec.ForMessage(2506, global::Google.Protobuf.WellKnownTypes.FieldMask.Parser);
1477     private readonly pbc::RepeatedField<global::Google.Protobuf.WellKnownTypes.FieldMask> repeatedFieldmask_ = new pbc::RepeatedField<global::Google.Protobuf.WellKnownTypes.FieldMask>();
1478     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1479     public pbc::RepeatedField<global::Google.Protobuf.WellKnownTypes.FieldMask> RepeatedFieldmask {
1480       get { return repeatedFieldmask_; }
1481     }
1482
1483     /// <summary>Field number for the "repeated_struct" field.</summary>
1484     public const int RepeatedStructFieldNumber = 324;
1485     private static readonly pb::FieldCodec<global::Google.Protobuf.WellKnownTypes.Struct> _repeated_repeatedStruct_codec
1486         = pb::FieldCodec.ForMessage(2594, global::Google.Protobuf.WellKnownTypes.Struct.Parser);
1487     private readonly pbc::RepeatedField<global::Google.Protobuf.WellKnownTypes.Struct> repeatedStruct_ = new pbc::RepeatedField<global::Google.Protobuf.WellKnownTypes.Struct>();
1488     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1489     public pbc::RepeatedField<global::Google.Protobuf.WellKnownTypes.Struct> RepeatedStruct {
1490       get { return repeatedStruct_; }
1491     }
1492
1493     /// <summary>Field number for the "repeated_any" field.</summary>
1494     public const int RepeatedAnyFieldNumber = 315;
1495     private static readonly pb::FieldCodec<global::Google.Protobuf.WellKnownTypes.Any> _repeated_repeatedAny_codec
1496         = pb::FieldCodec.ForMessage(2522, global::Google.Protobuf.WellKnownTypes.Any.Parser);
1497     private readonly pbc::RepeatedField<global::Google.Protobuf.WellKnownTypes.Any> repeatedAny_ = new pbc::RepeatedField<global::Google.Protobuf.WellKnownTypes.Any>();
1498     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1499     public pbc::RepeatedField<global::Google.Protobuf.WellKnownTypes.Any> RepeatedAny {
1500       get { return repeatedAny_; }
1501     }
1502
1503     /// <summary>Field number for the "repeated_value" field.</summary>
1504     public const int RepeatedValueFieldNumber = 316;
1505     private static readonly pb::FieldCodec<global::Google.Protobuf.WellKnownTypes.Value> _repeated_repeatedValue_codec
1506         = pb::FieldCodec.ForMessage(2530, global::Google.Protobuf.WellKnownTypes.Value.Parser);
1507     private readonly pbc::RepeatedField<global::Google.Protobuf.WellKnownTypes.Value> repeatedValue_ = new pbc::RepeatedField<global::Google.Protobuf.WellKnownTypes.Value>();
1508     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1509     public pbc::RepeatedField<global::Google.Protobuf.WellKnownTypes.Value> RepeatedValue {
1510       get { return repeatedValue_; }
1511     }
1512
1513     /// <summary>Field number for the "repeated_list_value" field.</summary>
1514     public const int RepeatedListValueFieldNumber = 317;
1515     private static readonly pb::FieldCodec<global::Google.Protobuf.WellKnownTypes.ListValue> _repeated_repeatedListValue_codec
1516         = pb::FieldCodec.ForMessage(2538, global::Google.Protobuf.WellKnownTypes.ListValue.Parser);
1517     private readonly pbc::RepeatedField<global::Google.Protobuf.WellKnownTypes.ListValue> repeatedListValue_ = new pbc::RepeatedField<global::Google.Protobuf.WellKnownTypes.ListValue>();
1518     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1519     public pbc::RepeatedField<global::Google.Protobuf.WellKnownTypes.ListValue> RepeatedListValue {
1520       get { return repeatedListValue_; }
1521     }
1522
1523     /// <summary>Field number for the "fieldname1" field.</summary>
1524     public const int Fieldname1FieldNumber = 401;
1525     private int fieldname1_;
1526     /// <summary>
1527     /// Test field-name-to-JSON-name convention.
1528     /// (protobuf says names can be any valid C/C++ identifier.)
1529     /// </summary>
1530     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1531     public int Fieldname1 {
1532       get { return fieldname1_; }
1533       set {
1534         fieldname1_ = value;
1535       }
1536     }
1537
1538     /// <summary>Field number for the "field_name2" field.</summary>
1539     public const int FieldName2FieldNumber = 402;
1540     private int fieldName2_;
1541     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1542     public int FieldName2 {
1543       get { return fieldName2_; }
1544       set {
1545         fieldName2_ = value;
1546       }
1547     }
1548
1549     /// <summary>Field number for the "_field_name3" field.</summary>
1550     public const int FieldName3FieldNumber = 403;
1551     private int FieldName3_;
1552     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1553     public int FieldName3 {
1554       get { return FieldName3_; }
1555       set {
1556         FieldName3_ = value;
1557       }
1558     }
1559
1560     /// <summary>Field number for the "field__name4_" field.</summary>
1561     public const int FieldName4FieldNumber = 404;
1562     private int fieldName4_;
1563     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1564     public int FieldName4 {
1565       get { return fieldName4_; }
1566       set {
1567         fieldName4_ = value;
1568       }
1569     }
1570
1571     /// <summary>Field number for the "field0name5" field.</summary>
1572     public const int Field0Name5FieldNumber = 405;
1573     private int field0Name5_;
1574     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1575     public int Field0Name5 {
1576       get { return field0Name5_; }
1577       set {
1578         field0Name5_ = value;
1579       }
1580     }
1581
1582     /// <summary>Field number for the "field_0_name6" field.</summary>
1583     public const int Field0Name6FieldNumber = 406;
1584     private int field0Name6_;
1585     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1586     public int Field0Name6 {
1587       get { return field0Name6_; }
1588       set {
1589         field0Name6_ = value;
1590       }
1591     }
1592
1593     /// <summary>Field number for the "fieldName7" field.</summary>
1594     public const int FieldName7FieldNumber = 407;
1595     private int fieldName7_;
1596     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1597     public int FieldName7 {
1598       get { return fieldName7_; }
1599       set {
1600         fieldName7_ = value;
1601       }
1602     }
1603
1604     /// <summary>Field number for the "FieldName8" field.</summary>
1605     public const int FieldName8FieldNumber = 408;
1606     private int fieldName8_;
1607     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1608     public int FieldName8 {
1609       get { return fieldName8_; }
1610       set {
1611         fieldName8_ = value;
1612       }
1613     }
1614
1615     /// <summary>Field number for the "field_Name9" field.</summary>
1616     public const int FieldName9FieldNumber = 409;
1617     private int fieldName9_;
1618     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1619     public int FieldName9 {
1620       get { return fieldName9_; }
1621       set {
1622         fieldName9_ = value;
1623       }
1624     }
1625
1626     /// <summary>Field number for the "Field_Name10" field.</summary>
1627     public const int FieldName10FieldNumber = 410;
1628     private int fieldName10_;
1629     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1630     public int FieldName10 {
1631       get { return fieldName10_; }
1632       set {
1633         fieldName10_ = value;
1634       }
1635     }
1636
1637     /// <summary>Field number for the "FIELD_NAME11" field.</summary>
1638     public const int FIELDNAME11FieldNumber = 411;
1639     private int fIELDNAME11_;
1640     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1641     public int FIELDNAME11 {
1642       get { return fIELDNAME11_; }
1643       set {
1644         fIELDNAME11_ = value;
1645       }
1646     }
1647
1648     /// <summary>Field number for the "FIELD_name12" field.</summary>
1649     public const int FIELDName12FieldNumber = 412;
1650     private int fIELDName12_;
1651     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1652     public int FIELDName12 {
1653       get { return fIELDName12_; }
1654       set {
1655         fIELDName12_ = value;
1656       }
1657     }
1658
1659     /// <summary>Field number for the "__field_name13" field.</summary>
1660     public const int FieldName13FieldNumber = 413;
1661     private int FieldName13_;
1662     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1663     public int FieldName13 {
1664       get { return FieldName13_; }
1665       set {
1666         FieldName13_ = value;
1667       }
1668     }
1669
1670     /// <summary>Field number for the "__Field_name14" field.</summary>
1671     public const int FieldName14FieldNumber = 414;
1672     private int FieldName14_;
1673     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1674     public int FieldName14 {
1675       get { return FieldName14_; }
1676       set {
1677         FieldName14_ = value;
1678       }
1679     }
1680
1681     /// <summary>Field number for the "field__name15" field.</summary>
1682     public const int FieldName15FieldNumber = 415;
1683     private int fieldName15_;
1684     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1685     public int FieldName15 {
1686       get { return fieldName15_; }
1687       set {
1688         fieldName15_ = value;
1689       }
1690     }
1691
1692     /// <summary>Field number for the "field__Name16" field.</summary>
1693     public const int FieldName16FieldNumber = 416;
1694     private int fieldName16_;
1695     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1696     public int FieldName16 {
1697       get { return fieldName16_; }
1698       set {
1699         fieldName16_ = value;
1700       }
1701     }
1702
1703     /// <summary>Field number for the "field_name17__" field.</summary>
1704     public const int FieldName17FieldNumber = 417;
1705     private int fieldName17_;
1706     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1707     public int FieldName17 {
1708       get { return fieldName17_; }
1709       set {
1710         fieldName17_ = value;
1711       }
1712     }
1713
1714     /// <summary>Field number for the "Field_name18__" field.</summary>
1715     public const int FieldName18FieldNumber = 418;
1716     private int fieldName18_;
1717     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1718     public int FieldName18 {
1719       get { return fieldName18_; }
1720       set {
1721         fieldName18_ = value;
1722       }
1723     }
1724
1725     private object oneofField_;
1726     /// <summary>Enum of possible cases for the "oneof_field" oneof.</summary>
1727     public enum OneofFieldOneofCase {
1728       None = 0,
1729       OneofUint32 = 111,
1730       OneofNestedMessage = 112,
1731       OneofString = 113,
1732       OneofBytes = 114,
1733       OneofBool = 115,
1734       OneofUint64 = 116,
1735       OneofFloat = 117,
1736       OneofDouble = 118,
1737       OneofEnum = 119,
1738     }
1739     private OneofFieldOneofCase oneofFieldCase_ = OneofFieldOneofCase.None;
1740     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1741     public OneofFieldOneofCase OneofFieldCase {
1742       get { return oneofFieldCase_; }
1743     }
1744
1745     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1746     public void ClearOneofField() {
1747       oneofFieldCase_ = OneofFieldOneofCase.None;
1748       oneofField_ = null;
1749     }
1750
1751     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1752     public override bool Equals(object other) {
1753       return Equals(other as TestAllTypesProto3);
1754     }
1755
1756     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1757     public bool Equals(TestAllTypesProto3 other) {
1758       if (ReferenceEquals(other, null)) {
1759         return false;
1760       }
1761       if (ReferenceEquals(other, this)) {
1762         return true;
1763       }
1764       if (OptionalInt32 != other.OptionalInt32) return false;
1765       if (OptionalInt64 != other.OptionalInt64) return false;
1766       if (OptionalUint32 != other.OptionalUint32) return false;
1767       if (OptionalUint64 != other.OptionalUint64) return false;
1768       if (OptionalSint32 != other.OptionalSint32) return false;
1769       if (OptionalSint64 != other.OptionalSint64) return false;
1770       if (OptionalFixed32 != other.OptionalFixed32) return false;
1771       if (OptionalFixed64 != other.OptionalFixed64) return false;
1772       if (OptionalSfixed32 != other.OptionalSfixed32) return false;
1773       if (OptionalSfixed64 != other.OptionalSfixed64) return false;
1774       if (!pbc::ProtobufEqualityComparers.BitwiseSingleEqualityComparer.Equals(OptionalFloat, other.OptionalFloat)) return false;
1775       if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(OptionalDouble, other.OptionalDouble)) return false;
1776       if (OptionalBool != other.OptionalBool) return false;
1777       if (OptionalString != other.OptionalString) return false;
1778       if (OptionalBytes != other.OptionalBytes) return false;
1779       if (!object.Equals(OptionalNestedMessage, other.OptionalNestedMessage)) return false;
1780       if (!object.Equals(OptionalForeignMessage, other.OptionalForeignMessage)) return false;
1781       if (OptionalNestedEnum != other.OptionalNestedEnum) return false;
1782       if (OptionalForeignEnum != other.OptionalForeignEnum) return false;
1783       if (OptionalAliasedEnum != other.OptionalAliasedEnum) return false;
1784       if (OptionalStringPiece != other.OptionalStringPiece) return false;
1785       if (OptionalCord != other.OptionalCord) return false;
1786       if (!object.Equals(RecursiveMessage, other.RecursiveMessage)) return false;
1787       if(!repeatedInt32_.Equals(other.repeatedInt32_)) return false;
1788       if(!repeatedInt64_.Equals(other.repeatedInt64_)) return false;
1789       if(!repeatedUint32_.Equals(other.repeatedUint32_)) return false;
1790       if(!repeatedUint64_.Equals(other.repeatedUint64_)) return false;
1791       if(!repeatedSint32_.Equals(other.repeatedSint32_)) return false;
1792       if(!repeatedSint64_.Equals(other.repeatedSint64_)) return false;
1793       if(!repeatedFixed32_.Equals(other.repeatedFixed32_)) return false;
1794       if(!repeatedFixed64_.Equals(other.repeatedFixed64_)) return false;
1795       if(!repeatedSfixed32_.Equals(other.repeatedSfixed32_)) return false;
1796       if(!repeatedSfixed64_.Equals(other.repeatedSfixed64_)) return false;
1797       if(!repeatedFloat_.Equals(other.repeatedFloat_)) return false;
1798       if(!repeatedDouble_.Equals(other.repeatedDouble_)) return false;
1799       if(!repeatedBool_.Equals(other.repeatedBool_)) return false;
1800       if(!repeatedString_.Equals(other.repeatedString_)) return false;
1801       if(!repeatedBytes_.Equals(other.repeatedBytes_)) return false;
1802       if(!repeatedNestedMessage_.Equals(other.repeatedNestedMessage_)) return false;
1803       if(!repeatedForeignMessage_.Equals(other.repeatedForeignMessage_)) return false;
1804       if(!repeatedNestedEnum_.Equals(other.repeatedNestedEnum_)) return false;
1805       if(!repeatedForeignEnum_.Equals(other.repeatedForeignEnum_)) return false;
1806       if(!repeatedStringPiece_.Equals(other.repeatedStringPiece_)) return false;
1807       if(!repeatedCord_.Equals(other.repeatedCord_)) return false;
1808       if (!MapInt32Int32.Equals(other.MapInt32Int32)) return false;
1809       if (!MapInt64Int64.Equals(other.MapInt64Int64)) return false;
1810       if (!MapUint32Uint32.Equals(other.MapUint32Uint32)) return false;
1811       if (!MapUint64Uint64.Equals(other.MapUint64Uint64)) return false;
1812       if (!MapSint32Sint32.Equals(other.MapSint32Sint32)) return false;
1813       if (!MapSint64Sint64.Equals(other.MapSint64Sint64)) return false;
1814       if (!MapFixed32Fixed32.Equals(other.MapFixed32Fixed32)) return false;
1815       if (!MapFixed64Fixed64.Equals(other.MapFixed64Fixed64)) return false;
1816       if (!MapSfixed32Sfixed32.Equals(other.MapSfixed32Sfixed32)) return false;
1817       if (!MapSfixed64Sfixed64.Equals(other.MapSfixed64Sfixed64)) return false;
1818       if (!MapInt32Float.Equals(other.MapInt32Float)) return false;
1819       if (!MapInt32Double.Equals(other.MapInt32Double)) return false;
1820       if (!MapBoolBool.Equals(other.MapBoolBool)) return false;
1821       if (!MapStringString.Equals(other.MapStringString)) return false;
1822       if (!MapStringBytes.Equals(other.MapStringBytes)) return false;
1823       if (!MapStringNestedMessage.Equals(other.MapStringNestedMessage)) return false;
1824       if (!MapStringForeignMessage.Equals(other.MapStringForeignMessage)) return false;
1825       if (!MapStringNestedEnum.Equals(other.MapStringNestedEnum)) return false;
1826       if (!MapStringForeignEnum.Equals(other.MapStringForeignEnum)) return false;
1827       if (OneofUint32 != other.OneofUint32) return false;
1828       if (!object.Equals(OneofNestedMessage, other.OneofNestedMessage)) return false;
1829       if (OneofString != other.OneofString) return false;
1830       if (OneofBytes != other.OneofBytes) return false;
1831       if (OneofBool != other.OneofBool) return false;
1832       if (OneofUint64 != other.OneofUint64) return false;
1833       if (!pbc::ProtobufEqualityComparers.BitwiseSingleEqualityComparer.Equals(OneofFloat, other.OneofFloat)) return false;
1834       if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(OneofDouble, other.OneofDouble)) return false;
1835       if (OneofEnum != other.OneofEnum) return false;
1836       if (OptionalBoolWrapper != other.OptionalBoolWrapper) return false;
1837       if (OptionalInt32Wrapper != other.OptionalInt32Wrapper) return false;
1838       if (OptionalInt64Wrapper != other.OptionalInt64Wrapper) return false;
1839       if (OptionalUint32Wrapper != other.OptionalUint32Wrapper) return false;
1840       if (OptionalUint64Wrapper != other.OptionalUint64Wrapper) return false;
1841       if (!pbc::ProtobufEqualityComparers.BitwiseNullableSingleEqualityComparer.Equals(OptionalFloatWrapper, other.OptionalFloatWrapper)) return false;
1842       if (!pbc::ProtobufEqualityComparers.BitwiseNullableDoubleEqualityComparer.Equals(OptionalDoubleWrapper, other.OptionalDoubleWrapper)) return false;
1843       if (OptionalStringWrapper != other.OptionalStringWrapper) return false;
1844       if (OptionalBytesWrapper != other.OptionalBytesWrapper) return false;
1845       if(!repeatedBoolWrapper_.Equals(other.repeatedBoolWrapper_)) return false;
1846       if(!repeatedInt32Wrapper_.Equals(other.repeatedInt32Wrapper_)) return false;
1847       if(!repeatedInt64Wrapper_.Equals(other.repeatedInt64Wrapper_)) return false;
1848       if(!repeatedUint32Wrapper_.Equals(other.repeatedUint32Wrapper_)) return false;
1849       if(!repeatedUint64Wrapper_.Equals(other.repeatedUint64Wrapper_)) return false;
1850       if(!repeatedFloatWrapper_.Equals(other.repeatedFloatWrapper_)) return false;
1851       if(!repeatedDoubleWrapper_.Equals(other.repeatedDoubleWrapper_)) return false;
1852       if(!repeatedStringWrapper_.Equals(other.repeatedStringWrapper_)) return false;
1853       if(!repeatedBytesWrapper_.Equals(other.repeatedBytesWrapper_)) return false;
1854       if (!object.Equals(OptionalDuration, other.OptionalDuration)) return false;
1855       if (!object.Equals(OptionalTimestamp, other.OptionalTimestamp)) return false;
1856       if (!object.Equals(OptionalFieldMask, other.OptionalFieldMask)) return false;
1857       if (!object.Equals(OptionalStruct, other.OptionalStruct)) return false;
1858       if (!object.Equals(OptionalAny, other.OptionalAny)) return false;
1859       if (!object.Equals(OptionalValue, other.OptionalValue)) return false;
1860       if(!repeatedDuration_.Equals(other.repeatedDuration_)) return false;
1861       if(!repeatedTimestamp_.Equals(other.repeatedTimestamp_)) return false;
1862       if(!repeatedFieldmask_.Equals(other.repeatedFieldmask_)) return false;
1863       if(!repeatedStruct_.Equals(other.repeatedStruct_)) return false;
1864       if(!repeatedAny_.Equals(other.repeatedAny_)) return false;
1865       if(!repeatedValue_.Equals(other.repeatedValue_)) return false;
1866       if(!repeatedListValue_.Equals(other.repeatedListValue_)) return false;
1867       if (Fieldname1 != other.Fieldname1) return false;
1868       if (FieldName2 != other.FieldName2) return false;
1869       if (FieldName3 != other.FieldName3) return false;
1870       if (FieldName4 != other.FieldName4) return false;
1871       if (Field0Name5 != other.Field0Name5) return false;
1872       if (Field0Name6 != other.Field0Name6) return false;
1873       if (FieldName7 != other.FieldName7) return false;
1874       if (FieldName8 != other.FieldName8) return false;
1875       if (FieldName9 != other.FieldName9) return false;
1876       if (FieldName10 != other.FieldName10) return false;
1877       if (FIELDNAME11 != other.FIELDNAME11) return false;
1878       if (FIELDName12 != other.FIELDName12) return false;
1879       if (FieldName13 != other.FieldName13) return false;
1880       if (FieldName14 != other.FieldName14) return false;
1881       if (FieldName15 != other.FieldName15) return false;
1882       if (FieldName16 != other.FieldName16) return false;
1883       if (FieldName17 != other.FieldName17) return false;
1884       if (FieldName18 != other.FieldName18) return false;
1885       if (OneofFieldCase != other.OneofFieldCase) return false;
1886       return Equals(_unknownFields, other._unknownFields);
1887     }
1888
1889     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1890     public override int GetHashCode() {
1891       int hash = 1;
1892       if (OptionalInt32 != 0) hash ^= OptionalInt32.GetHashCode();
1893       if (OptionalInt64 != 0L) hash ^= OptionalInt64.GetHashCode();
1894       if (OptionalUint32 != 0) hash ^= OptionalUint32.GetHashCode();
1895       if (OptionalUint64 != 0UL) hash ^= OptionalUint64.GetHashCode();
1896       if (OptionalSint32 != 0) hash ^= OptionalSint32.GetHashCode();
1897       if (OptionalSint64 != 0L) hash ^= OptionalSint64.GetHashCode();
1898       if (OptionalFixed32 != 0) hash ^= OptionalFixed32.GetHashCode();
1899       if (OptionalFixed64 != 0UL) hash ^= OptionalFixed64.GetHashCode();
1900       if (OptionalSfixed32 != 0) hash ^= OptionalSfixed32.GetHashCode();
1901       if (OptionalSfixed64 != 0L) hash ^= OptionalSfixed64.GetHashCode();
1902       if (OptionalFloat != 0F) hash ^= pbc::ProtobufEqualityComparers.BitwiseSingleEqualityComparer.GetHashCode(OptionalFloat);
1903       if (OptionalDouble != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(OptionalDouble);
1904       if (OptionalBool != false) hash ^= OptionalBool.GetHashCode();
1905       if (OptionalString.Length != 0) hash ^= OptionalString.GetHashCode();
1906       if (OptionalBytes.Length != 0) hash ^= OptionalBytes.GetHashCode();
1907       if (optionalNestedMessage_ != null) hash ^= OptionalNestedMessage.GetHashCode();
1908       if (optionalForeignMessage_ != null) hash ^= OptionalForeignMessage.GetHashCode();
1909       if (OptionalNestedEnum != 0) hash ^= OptionalNestedEnum.GetHashCode();
1910       if (OptionalForeignEnum != 0) hash ^= OptionalForeignEnum.GetHashCode();
1911       if (OptionalAliasedEnum != 0) hash ^= OptionalAliasedEnum.GetHashCode();
1912       if (OptionalStringPiece.Length != 0) hash ^= OptionalStringPiece.GetHashCode();
1913       if (OptionalCord.Length != 0) hash ^= OptionalCord.GetHashCode();
1914       if (recursiveMessage_ != null) hash ^= RecursiveMessage.GetHashCode();
1915       hash ^= repeatedInt32_.GetHashCode();
1916       hash ^= repeatedInt64_.GetHashCode();
1917       hash ^= repeatedUint32_.GetHashCode();
1918       hash ^= repeatedUint64_.GetHashCode();
1919       hash ^= repeatedSint32_.GetHashCode();
1920       hash ^= repeatedSint64_.GetHashCode();
1921       hash ^= repeatedFixed32_.GetHashCode();
1922       hash ^= repeatedFixed64_.GetHashCode();
1923       hash ^= repeatedSfixed32_.GetHashCode();
1924       hash ^= repeatedSfixed64_.GetHashCode();
1925       hash ^= repeatedFloat_.GetHashCode();
1926       hash ^= repeatedDouble_.GetHashCode();
1927       hash ^= repeatedBool_.GetHashCode();
1928       hash ^= repeatedString_.GetHashCode();
1929       hash ^= repeatedBytes_.GetHashCode();
1930       hash ^= repeatedNestedMessage_.GetHashCode();
1931       hash ^= repeatedForeignMessage_.GetHashCode();
1932       hash ^= repeatedNestedEnum_.GetHashCode();
1933       hash ^= repeatedForeignEnum_.GetHashCode();
1934       hash ^= repeatedStringPiece_.GetHashCode();
1935       hash ^= repeatedCord_.GetHashCode();
1936       hash ^= MapInt32Int32.GetHashCode();
1937       hash ^= MapInt64Int64.GetHashCode();
1938       hash ^= MapUint32Uint32.GetHashCode();
1939       hash ^= MapUint64Uint64.GetHashCode();
1940       hash ^= MapSint32Sint32.GetHashCode();
1941       hash ^= MapSint64Sint64.GetHashCode();
1942       hash ^= MapFixed32Fixed32.GetHashCode();
1943       hash ^= MapFixed64Fixed64.GetHashCode();
1944       hash ^= MapSfixed32Sfixed32.GetHashCode();
1945       hash ^= MapSfixed64Sfixed64.GetHashCode();
1946       hash ^= MapInt32Float.GetHashCode();
1947       hash ^= MapInt32Double.GetHashCode();
1948       hash ^= MapBoolBool.GetHashCode();
1949       hash ^= MapStringString.GetHashCode();
1950       hash ^= MapStringBytes.GetHashCode();
1951       hash ^= MapStringNestedMessage.GetHashCode();
1952       hash ^= MapStringForeignMessage.GetHashCode();
1953       hash ^= MapStringNestedEnum.GetHashCode();
1954       hash ^= MapStringForeignEnum.GetHashCode();
1955       if (oneofFieldCase_ == OneofFieldOneofCase.OneofUint32) hash ^= OneofUint32.GetHashCode();
1956       if (oneofFieldCase_ == OneofFieldOneofCase.OneofNestedMessage) hash ^= OneofNestedMessage.GetHashCode();
1957       if (oneofFieldCase_ == OneofFieldOneofCase.OneofString) hash ^= OneofString.GetHashCode();
1958       if (oneofFieldCase_ == OneofFieldOneofCase.OneofBytes) hash ^= OneofBytes.GetHashCode();
1959       if (oneofFieldCase_ == OneofFieldOneofCase.OneofBool) hash ^= OneofBool.GetHashCode();
1960       if (oneofFieldCase_ == OneofFieldOneofCase.OneofUint64) hash ^= OneofUint64.GetHashCode();
1961       if (oneofFieldCase_ == OneofFieldOneofCase.OneofFloat) hash ^= pbc::ProtobufEqualityComparers.BitwiseSingleEqualityComparer.GetHashCode(OneofFloat);
1962       if (oneofFieldCase_ == OneofFieldOneofCase.OneofDouble) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(OneofDouble);
1963       if (oneofFieldCase_ == OneofFieldOneofCase.OneofEnum) hash ^= OneofEnum.GetHashCode();
1964       if (optionalBoolWrapper_ != null) hash ^= OptionalBoolWrapper.GetHashCode();
1965       if (optionalInt32Wrapper_ != null) hash ^= OptionalInt32Wrapper.GetHashCode();
1966       if (optionalInt64Wrapper_ != null) hash ^= OptionalInt64Wrapper.GetHashCode();
1967       if (optionalUint32Wrapper_ != null) hash ^= OptionalUint32Wrapper.GetHashCode();
1968       if (optionalUint64Wrapper_ != null) hash ^= OptionalUint64Wrapper.GetHashCode();
1969       if (optionalFloatWrapper_ != null) hash ^= pbc::ProtobufEqualityComparers.BitwiseNullableSingleEqualityComparer.GetHashCode(OptionalFloatWrapper);
1970       if (optionalDoubleWrapper_ != null) hash ^= pbc::ProtobufEqualityComparers.BitwiseNullableDoubleEqualityComparer.GetHashCode(OptionalDoubleWrapper);
1971       if (optionalStringWrapper_ != null) hash ^= OptionalStringWrapper.GetHashCode();
1972       if (optionalBytesWrapper_ != null) hash ^= OptionalBytesWrapper.GetHashCode();
1973       hash ^= repeatedBoolWrapper_.GetHashCode();
1974       hash ^= repeatedInt32Wrapper_.GetHashCode();
1975       hash ^= repeatedInt64Wrapper_.GetHashCode();
1976       hash ^= repeatedUint32Wrapper_.GetHashCode();
1977       hash ^= repeatedUint64Wrapper_.GetHashCode();
1978       hash ^= repeatedFloatWrapper_.GetHashCode();
1979       hash ^= repeatedDoubleWrapper_.GetHashCode();
1980       hash ^= repeatedStringWrapper_.GetHashCode();
1981       hash ^= repeatedBytesWrapper_.GetHashCode();
1982       if (optionalDuration_ != null) hash ^= OptionalDuration.GetHashCode();
1983       if (optionalTimestamp_ != null) hash ^= OptionalTimestamp.GetHashCode();
1984       if (optionalFieldMask_ != null) hash ^= OptionalFieldMask.GetHashCode();
1985       if (optionalStruct_ != null) hash ^= OptionalStruct.GetHashCode();
1986       if (optionalAny_ != null) hash ^= OptionalAny.GetHashCode();
1987       if (optionalValue_ != null) hash ^= OptionalValue.GetHashCode();
1988       hash ^= repeatedDuration_.GetHashCode();
1989       hash ^= repeatedTimestamp_.GetHashCode();
1990       hash ^= repeatedFieldmask_.GetHashCode();
1991       hash ^= repeatedStruct_.GetHashCode();
1992       hash ^= repeatedAny_.GetHashCode();
1993       hash ^= repeatedValue_.GetHashCode();
1994       hash ^= repeatedListValue_.GetHashCode();
1995       if (Fieldname1 != 0) hash ^= Fieldname1.GetHashCode();
1996       if (FieldName2 != 0) hash ^= FieldName2.GetHashCode();
1997       if (FieldName3 != 0) hash ^= FieldName3.GetHashCode();
1998       if (FieldName4 != 0) hash ^= FieldName4.GetHashCode();
1999       if (Field0Name5 != 0) hash ^= Field0Name5.GetHashCode();
2000       if (Field0Name6 != 0) hash ^= Field0Name6.GetHashCode();
2001       if (FieldName7 != 0) hash ^= FieldName7.GetHashCode();
2002       if (FieldName8 != 0) hash ^= FieldName8.GetHashCode();
2003       if (FieldName9 != 0) hash ^= FieldName9.GetHashCode();
2004       if (FieldName10 != 0) hash ^= FieldName10.GetHashCode();
2005       if (FIELDNAME11 != 0) hash ^= FIELDNAME11.GetHashCode();
2006       if (FIELDName12 != 0) hash ^= FIELDName12.GetHashCode();
2007       if (FieldName13 != 0) hash ^= FieldName13.GetHashCode();
2008       if (FieldName14 != 0) hash ^= FieldName14.GetHashCode();
2009       if (FieldName15 != 0) hash ^= FieldName15.GetHashCode();
2010       if (FieldName16 != 0) hash ^= FieldName16.GetHashCode();
2011       if (FieldName17 != 0) hash ^= FieldName17.GetHashCode();
2012       if (FieldName18 != 0) hash ^= FieldName18.GetHashCode();
2013       hash ^= (int) oneofFieldCase_;
2014       if (_unknownFields != null) {
2015         hash ^= _unknownFields.GetHashCode();
2016       }
2017       return hash;
2018     }
2019
2020     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2021     public override string ToString() {
2022       return pb::JsonFormatter.ToDiagnosticString(this);
2023     }
2024
2025     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2026     public void WriteTo(pb::CodedOutputStream output) {
2027       if (OptionalInt32 != 0) {
2028         output.WriteRawTag(8);
2029         output.WriteInt32(OptionalInt32);
2030       }
2031       if (OptionalInt64 != 0L) {
2032         output.WriteRawTag(16);
2033         output.WriteInt64(OptionalInt64);
2034       }
2035       if (OptionalUint32 != 0) {
2036         output.WriteRawTag(24);
2037         output.WriteUInt32(OptionalUint32);
2038       }
2039       if (OptionalUint64 != 0UL) {
2040         output.WriteRawTag(32);
2041         output.WriteUInt64(OptionalUint64);
2042       }
2043       if (OptionalSint32 != 0) {
2044         output.WriteRawTag(40);
2045         output.WriteSInt32(OptionalSint32);
2046       }
2047       if (OptionalSint64 != 0L) {
2048         output.WriteRawTag(48);
2049         output.WriteSInt64(OptionalSint64);
2050       }
2051       if (OptionalFixed32 != 0) {
2052         output.WriteRawTag(61);
2053         output.WriteFixed32(OptionalFixed32);
2054       }
2055       if (OptionalFixed64 != 0UL) {
2056         output.WriteRawTag(65);
2057         output.WriteFixed64(OptionalFixed64);
2058       }
2059       if (OptionalSfixed32 != 0) {
2060         output.WriteRawTag(77);
2061         output.WriteSFixed32(OptionalSfixed32);
2062       }
2063       if (OptionalSfixed64 != 0L) {
2064         output.WriteRawTag(81);
2065         output.WriteSFixed64(OptionalSfixed64);
2066       }
2067       if (OptionalFloat != 0F) {
2068         output.WriteRawTag(93);
2069         output.WriteFloat(OptionalFloat);
2070       }
2071       if (OptionalDouble != 0D) {
2072         output.WriteRawTag(97);
2073         output.WriteDouble(OptionalDouble);
2074       }
2075       if (OptionalBool != false) {
2076         output.WriteRawTag(104);
2077         output.WriteBool(OptionalBool);
2078       }
2079       if (OptionalString.Length != 0) {
2080         output.WriteRawTag(114);
2081         output.WriteString(OptionalString);
2082       }
2083       if (OptionalBytes.Length != 0) {
2084         output.WriteRawTag(122);
2085         output.WriteBytes(OptionalBytes);
2086       }
2087       if (optionalNestedMessage_ != null) {
2088         output.WriteRawTag(146, 1);
2089         output.WriteMessage(OptionalNestedMessage);
2090       }
2091       if (optionalForeignMessage_ != null) {
2092         output.WriteRawTag(154, 1);
2093         output.WriteMessage(OptionalForeignMessage);
2094       }
2095       if (OptionalNestedEnum != 0) {
2096         output.WriteRawTag(168, 1);
2097         output.WriteEnum((int) OptionalNestedEnum);
2098       }
2099       if (OptionalForeignEnum != 0) {
2100         output.WriteRawTag(176, 1);
2101         output.WriteEnum((int) OptionalForeignEnum);
2102       }
2103       if (OptionalAliasedEnum != 0) {
2104         output.WriteRawTag(184, 1);
2105         output.WriteEnum((int) OptionalAliasedEnum);
2106       }
2107       if (OptionalStringPiece.Length != 0) {
2108         output.WriteRawTag(194, 1);
2109         output.WriteString(OptionalStringPiece);
2110       }
2111       if (OptionalCord.Length != 0) {
2112         output.WriteRawTag(202, 1);
2113         output.WriteString(OptionalCord);
2114       }
2115       if (recursiveMessage_ != null) {
2116         output.WriteRawTag(218, 1);
2117         output.WriteMessage(RecursiveMessage);
2118       }
2119       repeatedInt32_.WriteTo(output, _repeated_repeatedInt32_codec);
2120       repeatedInt64_.WriteTo(output, _repeated_repeatedInt64_codec);
2121       repeatedUint32_.WriteTo(output, _repeated_repeatedUint32_codec);
2122       repeatedUint64_.WriteTo(output, _repeated_repeatedUint64_codec);
2123       repeatedSint32_.WriteTo(output, _repeated_repeatedSint32_codec);
2124       repeatedSint64_.WriteTo(output, _repeated_repeatedSint64_codec);
2125       repeatedFixed32_.WriteTo(output, _repeated_repeatedFixed32_codec);
2126       repeatedFixed64_.WriteTo(output, _repeated_repeatedFixed64_codec);
2127       repeatedSfixed32_.WriteTo(output, _repeated_repeatedSfixed32_codec);
2128       repeatedSfixed64_.WriteTo(output, _repeated_repeatedSfixed64_codec);
2129       repeatedFloat_.WriteTo(output, _repeated_repeatedFloat_codec);
2130       repeatedDouble_.WriteTo(output, _repeated_repeatedDouble_codec);
2131       repeatedBool_.WriteTo(output, _repeated_repeatedBool_codec);
2132       repeatedString_.WriteTo(output, _repeated_repeatedString_codec);
2133       repeatedBytes_.WriteTo(output, _repeated_repeatedBytes_codec);
2134       repeatedNestedMessage_.WriteTo(output, _repeated_repeatedNestedMessage_codec);
2135       repeatedForeignMessage_.WriteTo(output, _repeated_repeatedForeignMessage_codec);
2136       repeatedNestedEnum_.WriteTo(output, _repeated_repeatedNestedEnum_codec);
2137       repeatedForeignEnum_.WriteTo(output, _repeated_repeatedForeignEnum_codec);
2138       repeatedStringPiece_.WriteTo(output, _repeated_repeatedStringPiece_codec);
2139       repeatedCord_.WriteTo(output, _repeated_repeatedCord_codec);
2140       mapInt32Int32_.WriteTo(output, _map_mapInt32Int32_codec);
2141       mapInt64Int64_.WriteTo(output, _map_mapInt64Int64_codec);
2142       mapUint32Uint32_.WriteTo(output, _map_mapUint32Uint32_codec);
2143       mapUint64Uint64_.WriteTo(output, _map_mapUint64Uint64_codec);
2144       mapSint32Sint32_.WriteTo(output, _map_mapSint32Sint32_codec);
2145       mapSint64Sint64_.WriteTo(output, _map_mapSint64Sint64_codec);
2146       mapFixed32Fixed32_.WriteTo(output, _map_mapFixed32Fixed32_codec);
2147       mapFixed64Fixed64_.WriteTo(output, _map_mapFixed64Fixed64_codec);
2148       mapSfixed32Sfixed32_.WriteTo(output, _map_mapSfixed32Sfixed32_codec);
2149       mapSfixed64Sfixed64_.WriteTo(output, _map_mapSfixed64Sfixed64_codec);
2150       mapInt32Float_.WriteTo(output, _map_mapInt32Float_codec);
2151       mapInt32Double_.WriteTo(output, _map_mapInt32Double_codec);
2152       mapBoolBool_.WriteTo(output, _map_mapBoolBool_codec);
2153       mapStringString_.WriteTo(output, _map_mapStringString_codec);
2154       mapStringBytes_.WriteTo(output, _map_mapStringBytes_codec);
2155       mapStringNestedMessage_.WriteTo(output, _map_mapStringNestedMessage_codec);
2156       mapStringForeignMessage_.WriteTo(output, _map_mapStringForeignMessage_codec);
2157       mapStringNestedEnum_.WriteTo(output, _map_mapStringNestedEnum_codec);
2158       mapStringForeignEnum_.WriteTo(output, _map_mapStringForeignEnum_codec);
2159       if (oneofFieldCase_ == OneofFieldOneofCase.OneofUint32) {
2160         output.WriteRawTag(248, 6);
2161         output.WriteUInt32(OneofUint32);
2162       }
2163       if (oneofFieldCase_ == OneofFieldOneofCase.OneofNestedMessage) {
2164         output.WriteRawTag(130, 7);
2165         output.WriteMessage(OneofNestedMessage);
2166       }
2167       if (oneofFieldCase_ == OneofFieldOneofCase.OneofString) {
2168         output.WriteRawTag(138, 7);
2169         output.WriteString(OneofString);
2170       }
2171       if (oneofFieldCase_ == OneofFieldOneofCase.OneofBytes) {
2172         output.WriteRawTag(146, 7);
2173         output.WriteBytes(OneofBytes);
2174       }
2175       if (oneofFieldCase_ == OneofFieldOneofCase.OneofBool) {
2176         output.WriteRawTag(152, 7);
2177         output.WriteBool(OneofBool);
2178       }
2179       if (oneofFieldCase_ == OneofFieldOneofCase.OneofUint64) {
2180         output.WriteRawTag(160, 7);
2181         output.WriteUInt64(OneofUint64);
2182       }
2183       if (oneofFieldCase_ == OneofFieldOneofCase.OneofFloat) {
2184         output.WriteRawTag(173, 7);
2185         output.WriteFloat(OneofFloat);
2186       }
2187       if (oneofFieldCase_ == OneofFieldOneofCase.OneofDouble) {
2188         output.WriteRawTag(177, 7);
2189         output.WriteDouble(OneofDouble);
2190       }
2191       if (oneofFieldCase_ == OneofFieldOneofCase.OneofEnum) {
2192         output.WriteRawTag(184, 7);
2193         output.WriteEnum((int) OneofEnum);
2194       }
2195       if (optionalBoolWrapper_ != null) {
2196         _single_optionalBoolWrapper_codec.WriteTagAndValue(output, OptionalBoolWrapper);
2197       }
2198       if (optionalInt32Wrapper_ != null) {
2199         _single_optionalInt32Wrapper_codec.WriteTagAndValue(output, OptionalInt32Wrapper);
2200       }
2201       if (optionalInt64Wrapper_ != null) {
2202         _single_optionalInt64Wrapper_codec.WriteTagAndValue(output, OptionalInt64Wrapper);
2203       }
2204       if (optionalUint32Wrapper_ != null) {
2205         _single_optionalUint32Wrapper_codec.WriteTagAndValue(output, OptionalUint32Wrapper);
2206       }
2207       if (optionalUint64Wrapper_ != null) {
2208         _single_optionalUint64Wrapper_codec.WriteTagAndValue(output, OptionalUint64Wrapper);
2209       }
2210       if (optionalFloatWrapper_ != null) {
2211         _single_optionalFloatWrapper_codec.WriteTagAndValue(output, OptionalFloatWrapper);
2212       }
2213       if (optionalDoubleWrapper_ != null) {
2214         _single_optionalDoubleWrapper_codec.WriteTagAndValue(output, OptionalDoubleWrapper);
2215       }
2216       if (optionalStringWrapper_ != null) {
2217         _single_optionalStringWrapper_codec.WriteTagAndValue(output, OptionalStringWrapper);
2218       }
2219       if (optionalBytesWrapper_ != null) {
2220         _single_optionalBytesWrapper_codec.WriteTagAndValue(output, OptionalBytesWrapper);
2221       }
2222       repeatedBoolWrapper_.WriteTo(output, _repeated_repeatedBoolWrapper_codec);
2223       repeatedInt32Wrapper_.WriteTo(output, _repeated_repeatedInt32Wrapper_codec);
2224       repeatedInt64Wrapper_.WriteTo(output, _repeated_repeatedInt64Wrapper_codec);
2225       repeatedUint32Wrapper_.WriteTo(output, _repeated_repeatedUint32Wrapper_codec);
2226       repeatedUint64Wrapper_.WriteTo(output, _repeated_repeatedUint64Wrapper_codec);
2227       repeatedFloatWrapper_.WriteTo(output, _repeated_repeatedFloatWrapper_codec);
2228       repeatedDoubleWrapper_.WriteTo(output, _repeated_repeatedDoubleWrapper_codec);
2229       repeatedStringWrapper_.WriteTo(output, _repeated_repeatedStringWrapper_codec);
2230       repeatedBytesWrapper_.WriteTo(output, _repeated_repeatedBytesWrapper_codec);
2231       if (optionalDuration_ != null) {
2232         output.WriteRawTag(234, 18);
2233         output.WriteMessage(OptionalDuration);
2234       }
2235       if (optionalTimestamp_ != null) {
2236         output.WriteRawTag(242, 18);
2237         output.WriteMessage(OptionalTimestamp);
2238       }
2239       if (optionalFieldMask_ != null) {
2240         output.WriteRawTag(250, 18);
2241         output.WriteMessage(OptionalFieldMask);
2242       }
2243       if (optionalStruct_ != null) {
2244         output.WriteRawTag(130, 19);
2245         output.WriteMessage(OptionalStruct);
2246       }
2247       if (optionalAny_ != null) {
2248         output.WriteRawTag(138, 19);
2249         output.WriteMessage(OptionalAny);
2250       }
2251       if (optionalValue_ != null) {
2252         output.WriteRawTag(146, 19);
2253         output.WriteMessage(OptionalValue);
2254       }
2255       repeatedDuration_.WriteTo(output, _repeated_repeatedDuration_codec);
2256       repeatedTimestamp_.WriteTo(output, _repeated_repeatedTimestamp_codec);
2257       repeatedFieldmask_.WriteTo(output, _repeated_repeatedFieldmask_codec);
2258       repeatedAny_.WriteTo(output, _repeated_repeatedAny_codec);
2259       repeatedValue_.WriteTo(output, _repeated_repeatedValue_codec);
2260       repeatedListValue_.WriteTo(output, _repeated_repeatedListValue_codec);
2261       repeatedStruct_.WriteTo(output, _repeated_repeatedStruct_codec);
2262       if (Fieldname1 != 0) {
2263         output.WriteRawTag(136, 25);
2264         output.WriteInt32(Fieldname1);
2265       }
2266       if (FieldName2 != 0) {
2267         output.WriteRawTag(144, 25);
2268         output.WriteInt32(FieldName2);
2269       }
2270       if (FieldName3 != 0) {
2271         output.WriteRawTag(152, 25);
2272         output.WriteInt32(FieldName3);
2273       }
2274       if (FieldName4 != 0) {
2275         output.WriteRawTag(160, 25);
2276         output.WriteInt32(FieldName4);
2277       }
2278       if (Field0Name5 != 0) {
2279         output.WriteRawTag(168, 25);
2280         output.WriteInt32(Field0Name5);
2281       }
2282       if (Field0Name6 != 0) {
2283         output.WriteRawTag(176, 25);
2284         output.WriteInt32(Field0Name6);
2285       }
2286       if (FieldName7 != 0) {
2287         output.WriteRawTag(184, 25);
2288         output.WriteInt32(FieldName7);
2289       }
2290       if (FieldName8 != 0) {
2291         output.WriteRawTag(192, 25);
2292         output.WriteInt32(FieldName8);
2293       }
2294       if (FieldName9 != 0) {
2295         output.WriteRawTag(200, 25);
2296         output.WriteInt32(FieldName9);
2297       }
2298       if (FieldName10 != 0) {
2299         output.WriteRawTag(208, 25);
2300         output.WriteInt32(FieldName10);
2301       }
2302       if (FIELDNAME11 != 0) {
2303         output.WriteRawTag(216, 25);
2304         output.WriteInt32(FIELDNAME11);
2305       }
2306       if (FIELDName12 != 0) {
2307         output.WriteRawTag(224, 25);
2308         output.WriteInt32(FIELDName12);
2309       }
2310       if (FieldName13 != 0) {
2311         output.WriteRawTag(232, 25);
2312         output.WriteInt32(FieldName13);
2313       }
2314       if (FieldName14 != 0) {
2315         output.WriteRawTag(240, 25);
2316         output.WriteInt32(FieldName14);
2317       }
2318       if (FieldName15 != 0) {
2319         output.WriteRawTag(248, 25);
2320         output.WriteInt32(FieldName15);
2321       }
2322       if (FieldName16 != 0) {
2323         output.WriteRawTag(128, 26);
2324         output.WriteInt32(FieldName16);
2325       }
2326       if (FieldName17 != 0) {
2327         output.WriteRawTag(136, 26);
2328         output.WriteInt32(FieldName17);
2329       }
2330       if (FieldName18 != 0) {
2331         output.WriteRawTag(144, 26);
2332         output.WriteInt32(FieldName18);
2333       }
2334       if (_unknownFields != null) {
2335         _unknownFields.WriteTo(output);
2336       }
2337     }
2338
2339     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2340     public int CalculateSize() {
2341       int size = 0;
2342       if (OptionalInt32 != 0) {
2343         size += 1 + pb::CodedOutputStream.ComputeInt32Size(OptionalInt32);
2344       }
2345       if (OptionalInt64 != 0L) {
2346         size += 1 + pb::CodedOutputStream.ComputeInt64Size(OptionalInt64);
2347       }
2348       if (OptionalUint32 != 0) {
2349         size += 1 + pb::CodedOutputStream.ComputeUInt32Size(OptionalUint32);
2350       }
2351       if (OptionalUint64 != 0UL) {
2352         size += 1 + pb::CodedOutputStream.ComputeUInt64Size(OptionalUint64);
2353       }
2354       if (OptionalSint32 != 0) {
2355         size += 1 + pb::CodedOutputStream.ComputeSInt32Size(OptionalSint32);
2356       }
2357       if (OptionalSint64 != 0L) {
2358         size += 1 + pb::CodedOutputStream.ComputeSInt64Size(OptionalSint64);
2359       }
2360       if (OptionalFixed32 != 0) {
2361         size += 1 + 4;
2362       }
2363       if (OptionalFixed64 != 0UL) {
2364         size += 1 + 8;
2365       }
2366       if (OptionalSfixed32 != 0) {
2367         size += 1 + 4;
2368       }
2369       if (OptionalSfixed64 != 0L) {
2370         size += 1 + 8;
2371       }
2372       if (OptionalFloat != 0F) {
2373         size += 1 + 4;
2374       }
2375       if (OptionalDouble != 0D) {
2376         size += 1 + 8;
2377       }
2378       if (OptionalBool != false) {
2379         size += 1 + 1;
2380       }
2381       if (OptionalString.Length != 0) {
2382         size += 1 + pb::CodedOutputStream.ComputeStringSize(OptionalString);
2383       }
2384       if (OptionalBytes.Length != 0) {
2385         size += 1 + pb::CodedOutputStream.ComputeBytesSize(OptionalBytes);
2386       }
2387       if (optionalNestedMessage_ != null) {
2388         size += 2 + pb::CodedOutputStream.ComputeMessageSize(OptionalNestedMessage);
2389       }
2390       if (optionalForeignMessage_ != null) {
2391         size += 2 + pb::CodedOutputStream.ComputeMessageSize(OptionalForeignMessage);
2392       }
2393       if (OptionalNestedEnum != 0) {
2394         size += 2 + pb::CodedOutputStream.ComputeEnumSize((int) OptionalNestedEnum);
2395       }
2396       if (OptionalForeignEnum != 0) {
2397         size += 2 + pb::CodedOutputStream.ComputeEnumSize((int) OptionalForeignEnum);
2398       }
2399       if (OptionalAliasedEnum != 0) {
2400         size += 2 + pb::CodedOutputStream.ComputeEnumSize((int) OptionalAliasedEnum);
2401       }
2402       if (OptionalStringPiece.Length != 0) {
2403         size += 2 + pb::CodedOutputStream.ComputeStringSize(OptionalStringPiece);
2404       }
2405       if (OptionalCord.Length != 0) {
2406         size += 2 + pb::CodedOutputStream.ComputeStringSize(OptionalCord);
2407       }
2408       if (recursiveMessage_ != null) {
2409         size += 2 + pb::CodedOutputStream.ComputeMessageSize(RecursiveMessage);
2410       }
2411       size += repeatedInt32_.CalculateSize(_repeated_repeatedInt32_codec);
2412       size += repeatedInt64_.CalculateSize(_repeated_repeatedInt64_codec);
2413       size += repeatedUint32_.CalculateSize(_repeated_repeatedUint32_codec);
2414       size += repeatedUint64_.CalculateSize(_repeated_repeatedUint64_codec);
2415       size += repeatedSint32_.CalculateSize(_repeated_repeatedSint32_codec);
2416       size += repeatedSint64_.CalculateSize(_repeated_repeatedSint64_codec);
2417       size += repeatedFixed32_.CalculateSize(_repeated_repeatedFixed32_codec);
2418       size += repeatedFixed64_.CalculateSize(_repeated_repeatedFixed64_codec);
2419       size += repeatedSfixed32_.CalculateSize(_repeated_repeatedSfixed32_codec);
2420       size += repeatedSfixed64_.CalculateSize(_repeated_repeatedSfixed64_codec);
2421       size += repeatedFloat_.CalculateSize(_repeated_repeatedFloat_codec);
2422       size += repeatedDouble_.CalculateSize(_repeated_repeatedDouble_codec);
2423       size += repeatedBool_.CalculateSize(_repeated_repeatedBool_codec);
2424       size += repeatedString_.CalculateSize(_repeated_repeatedString_codec);
2425       size += repeatedBytes_.CalculateSize(_repeated_repeatedBytes_codec);
2426       size += repeatedNestedMessage_.CalculateSize(_repeated_repeatedNestedMessage_codec);
2427       size += repeatedForeignMessage_.CalculateSize(_repeated_repeatedForeignMessage_codec);
2428       size += repeatedNestedEnum_.CalculateSize(_repeated_repeatedNestedEnum_codec);
2429       size += repeatedForeignEnum_.CalculateSize(_repeated_repeatedForeignEnum_codec);
2430       size += repeatedStringPiece_.CalculateSize(_repeated_repeatedStringPiece_codec);
2431       size += repeatedCord_.CalculateSize(_repeated_repeatedCord_codec);
2432       size += mapInt32Int32_.CalculateSize(_map_mapInt32Int32_codec);
2433       size += mapInt64Int64_.CalculateSize(_map_mapInt64Int64_codec);
2434       size += mapUint32Uint32_.CalculateSize(_map_mapUint32Uint32_codec);
2435       size += mapUint64Uint64_.CalculateSize(_map_mapUint64Uint64_codec);
2436       size += mapSint32Sint32_.CalculateSize(_map_mapSint32Sint32_codec);
2437       size += mapSint64Sint64_.CalculateSize(_map_mapSint64Sint64_codec);
2438       size += mapFixed32Fixed32_.CalculateSize(_map_mapFixed32Fixed32_codec);
2439       size += mapFixed64Fixed64_.CalculateSize(_map_mapFixed64Fixed64_codec);
2440       size += mapSfixed32Sfixed32_.CalculateSize(_map_mapSfixed32Sfixed32_codec);
2441       size += mapSfixed64Sfixed64_.CalculateSize(_map_mapSfixed64Sfixed64_codec);
2442       size += mapInt32Float_.CalculateSize(_map_mapInt32Float_codec);
2443       size += mapInt32Double_.CalculateSize(_map_mapInt32Double_codec);
2444       size += mapBoolBool_.CalculateSize(_map_mapBoolBool_codec);
2445       size += mapStringString_.CalculateSize(_map_mapStringString_codec);
2446       size += mapStringBytes_.CalculateSize(_map_mapStringBytes_codec);
2447       size += mapStringNestedMessage_.CalculateSize(_map_mapStringNestedMessage_codec);
2448       size += mapStringForeignMessage_.CalculateSize(_map_mapStringForeignMessage_codec);
2449       size += mapStringNestedEnum_.CalculateSize(_map_mapStringNestedEnum_codec);
2450       size += mapStringForeignEnum_.CalculateSize(_map_mapStringForeignEnum_codec);
2451       if (oneofFieldCase_ == OneofFieldOneofCase.OneofUint32) {
2452         size += 2 + pb::CodedOutputStream.ComputeUInt32Size(OneofUint32);
2453       }
2454       if (oneofFieldCase_ == OneofFieldOneofCase.OneofNestedMessage) {
2455         size += 2 + pb::CodedOutputStream.ComputeMessageSize(OneofNestedMessage);
2456       }
2457       if (oneofFieldCase_ == OneofFieldOneofCase.OneofString) {
2458         size += 2 + pb::CodedOutputStream.ComputeStringSize(OneofString);
2459       }
2460       if (oneofFieldCase_ == OneofFieldOneofCase.OneofBytes) {
2461         size += 2 + pb::CodedOutputStream.ComputeBytesSize(OneofBytes);
2462       }
2463       if (oneofFieldCase_ == OneofFieldOneofCase.OneofBool) {
2464         size += 2 + 1;
2465       }
2466       if (oneofFieldCase_ == OneofFieldOneofCase.OneofUint64) {
2467         size += 2 + pb::CodedOutputStream.ComputeUInt64Size(OneofUint64);
2468       }
2469       if (oneofFieldCase_ == OneofFieldOneofCase.OneofFloat) {
2470         size += 2 + 4;
2471       }
2472       if (oneofFieldCase_ == OneofFieldOneofCase.OneofDouble) {
2473         size += 2 + 8;
2474       }
2475       if (oneofFieldCase_ == OneofFieldOneofCase.OneofEnum) {
2476         size += 2 + pb::CodedOutputStream.ComputeEnumSize((int) OneofEnum);
2477       }
2478       if (optionalBoolWrapper_ != null) {
2479         size += _single_optionalBoolWrapper_codec.CalculateSizeWithTag(OptionalBoolWrapper);
2480       }
2481       if (optionalInt32Wrapper_ != null) {
2482         size += _single_optionalInt32Wrapper_codec.CalculateSizeWithTag(OptionalInt32Wrapper);
2483       }
2484       if (optionalInt64Wrapper_ != null) {
2485         size += _single_optionalInt64Wrapper_codec.CalculateSizeWithTag(OptionalInt64Wrapper);
2486       }
2487       if (optionalUint32Wrapper_ != null) {
2488         size += _single_optionalUint32Wrapper_codec.CalculateSizeWithTag(OptionalUint32Wrapper);
2489       }
2490       if (optionalUint64Wrapper_ != null) {
2491         size += _single_optionalUint64Wrapper_codec.CalculateSizeWithTag(OptionalUint64Wrapper);
2492       }
2493       if (optionalFloatWrapper_ != null) {
2494         size += _single_optionalFloatWrapper_codec.CalculateSizeWithTag(OptionalFloatWrapper);
2495       }
2496       if (optionalDoubleWrapper_ != null) {
2497         size += _single_optionalDoubleWrapper_codec.CalculateSizeWithTag(OptionalDoubleWrapper);
2498       }
2499       if (optionalStringWrapper_ != null) {
2500         size += _single_optionalStringWrapper_codec.CalculateSizeWithTag(OptionalStringWrapper);
2501       }
2502       if (optionalBytesWrapper_ != null) {
2503         size += _single_optionalBytesWrapper_codec.CalculateSizeWithTag(OptionalBytesWrapper);
2504       }
2505       size += repeatedBoolWrapper_.CalculateSize(_repeated_repeatedBoolWrapper_codec);
2506       size += repeatedInt32Wrapper_.CalculateSize(_repeated_repeatedInt32Wrapper_codec);
2507       size += repeatedInt64Wrapper_.CalculateSize(_repeated_repeatedInt64Wrapper_codec);
2508       size += repeatedUint32Wrapper_.CalculateSize(_repeated_repeatedUint32Wrapper_codec);
2509       size += repeatedUint64Wrapper_.CalculateSize(_repeated_repeatedUint64Wrapper_codec);
2510       size += repeatedFloatWrapper_.CalculateSize(_repeated_repeatedFloatWrapper_codec);
2511       size += repeatedDoubleWrapper_.CalculateSize(_repeated_repeatedDoubleWrapper_codec);
2512       size += repeatedStringWrapper_.CalculateSize(_repeated_repeatedStringWrapper_codec);
2513       size += repeatedBytesWrapper_.CalculateSize(_repeated_repeatedBytesWrapper_codec);
2514       if (optionalDuration_ != null) {
2515         size += 2 + pb::CodedOutputStream.ComputeMessageSize(OptionalDuration);
2516       }
2517       if (optionalTimestamp_ != null) {
2518         size += 2 + pb::CodedOutputStream.ComputeMessageSize(OptionalTimestamp);
2519       }
2520       if (optionalFieldMask_ != null) {
2521         size += 2 + pb::CodedOutputStream.ComputeMessageSize(OptionalFieldMask);
2522       }
2523       if (optionalStruct_ != null) {
2524         size += 2 + pb::CodedOutputStream.ComputeMessageSize(OptionalStruct);
2525       }
2526       if (optionalAny_ != null) {
2527         size += 2 + pb::CodedOutputStream.ComputeMessageSize(OptionalAny);
2528       }
2529       if (optionalValue_ != null) {
2530         size += 2 + pb::CodedOutputStream.ComputeMessageSize(OptionalValue);
2531       }
2532       size += repeatedDuration_.CalculateSize(_repeated_repeatedDuration_codec);
2533       size += repeatedTimestamp_.CalculateSize(_repeated_repeatedTimestamp_codec);
2534       size += repeatedFieldmask_.CalculateSize(_repeated_repeatedFieldmask_codec);
2535       size += repeatedStruct_.CalculateSize(_repeated_repeatedStruct_codec);
2536       size += repeatedAny_.CalculateSize(_repeated_repeatedAny_codec);
2537       size += repeatedValue_.CalculateSize(_repeated_repeatedValue_codec);
2538       size += repeatedListValue_.CalculateSize(_repeated_repeatedListValue_codec);
2539       if (Fieldname1 != 0) {
2540         size += 2 + pb::CodedOutputStream.ComputeInt32Size(Fieldname1);
2541       }
2542       if (FieldName2 != 0) {
2543         size += 2 + pb::CodedOutputStream.ComputeInt32Size(FieldName2);
2544       }
2545       if (FieldName3 != 0) {
2546         size += 2 + pb::CodedOutputStream.ComputeInt32Size(FieldName3);
2547       }
2548       if (FieldName4 != 0) {
2549         size += 2 + pb::CodedOutputStream.ComputeInt32Size(FieldName4);
2550       }
2551       if (Field0Name5 != 0) {
2552         size += 2 + pb::CodedOutputStream.ComputeInt32Size(Field0Name5);
2553       }
2554       if (Field0Name6 != 0) {
2555         size += 2 + pb::CodedOutputStream.ComputeInt32Size(Field0Name6);
2556       }
2557       if (FieldName7 != 0) {
2558         size += 2 + pb::CodedOutputStream.ComputeInt32Size(FieldName7);
2559       }
2560       if (FieldName8 != 0) {
2561         size += 2 + pb::CodedOutputStream.ComputeInt32Size(FieldName8);
2562       }
2563       if (FieldName9 != 0) {
2564         size += 2 + pb::CodedOutputStream.ComputeInt32Size(FieldName9);
2565       }
2566       if (FieldName10 != 0) {
2567         size += 2 + pb::CodedOutputStream.ComputeInt32Size(FieldName10);
2568       }
2569       if (FIELDNAME11 != 0) {
2570         size += 2 + pb::CodedOutputStream.ComputeInt32Size(FIELDNAME11);
2571       }
2572       if (FIELDName12 != 0) {
2573         size += 2 + pb::CodedOutputStream.ComputeInt32Size(FIELDName12);
2574       }
2575       if (FieldName13 != 0) {
2576         size += 2 + pb::CodedOutputStream.ComputeInt32Size(FieldName13);
2577       }
2578       if (FieldName14 != 0) {
2579         size += 2 + pb::CodedOutputStream.ComputeInt32Size(FieldName14);
2580       }
2581       if (FieldName15 != 0) {
2582         size += 2 + pb::CodedOutputStream.ComputeInt32Size(FieldName15);
2583       }
2584       if (FieldName16 != 0) {
2585         size += 2 + pb::CodedOutputStream.ComputeInt32Size(FieldName16);
2586       }
2587       if (FieldName17 != 0) {
2588         size += 2 + pb::CodedOutputStream.ComputeInt32Size(FieldName17);
2589       }
2590       if (FieldName18 != 0) {
2591         size += 2 + pb::CodedOutputStream.ComputeInt32Size(FieldName18);
2592       }
2593       if (_unknownFields != null) {
2594         size += _unknownFields.CalculateSize();
2595       }
2596       return size;
2597     }
2598
2599     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2600     public void MergeFrom(TestAllTypesProto3 other) {
2601       if (other == null) {
2602         return;
2603       }
2604       if (other.OptionalInt32 != 0) {
2605         OptionalInt32 = other.OptionalInt32;
2606       }
2607       if (other.OptionalInt64 != 0L) {
2608         OptionalInt64 = other.OptionalInt64;
2609       }
2610       if (other.OptionalUint32 != 0) {
2611         OptionalUint32 = other.OptionalUint32;
2612       }
2613       if (other.OptionalUint64 != 0UL) {
2614         OptionalUint64 = other.OptionalUint64;
2615       }
2616       if (other.OptionalSint32 != 0) {
2617         OptionalSint32 = other.OptionalSint32;
2618       }
2619       if (other.OptionalSint64 != 0L) {
2620         OptionalSint64 = other.OptionalSint64;
2621       }
2622       if (other.OptionalFixed32 != 0) {
2623         OptionalFixed32 = other.OptionalFixed32;
2624       }
2625       if (other.OptionalFixed64 != 0UL) {
2626         OptionalFixed64 = other.OptionalFixed64;
2627       }
2628       if (other.OptionalSfixed32 != 0) {
2629         OptionalSfixed32 = other.OptionalSfixed32;
2630       }
2631       if (other.OptionalSfixed64 != 0L) {
2632         OptionalSfixed64 = other.OptionalSfixed64;
2633       }
2634       if (other.OptionalFloat != 0F) {
2635         OptionalFloat = other.OptionalFloat;
2636       }
2637       if (other.OptionalDouble != 0D) {
2638         OptionalDouble = other.OptionalDouble;
2639       }
2640       if (other.OptionalBool != false) {
2641         OptionalBool = other.OptionalBool;
2642       }
2643       if (other.OptionalString.Length != 0) {
2644         OptionalString = other.OptionalString;
2645       }
2646       if (other.OptionalBytes.Length != 0) {
2647         OptionalBytes = other.OptionalBytes;
2648       }
2649       if (other.optionalNestedMessage_ != null) {
2650         if (optionalNestedMessage_ == null) {
2651           OptionalNestedMessage = new global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedMessage();
2652         }
2653         OptionalNestedMessage.MergeFrom(other.OptionalNestedMessage);
2654       }
2655       if (other.optionalForeignMessage_ != null) {
2656         if (optionalForeignMessage_ == null) {
2657           OptionalForeignMessage = new global::ProtobufTestMessages.Proto3.ForeignMessage();
2658         }
2659         OptionalForeignMessage.MergeFrom(other.OptionalForeignMessage);
2660       }
2661       if (other.OptionalNestedEnum != 0) {
2662         OptionalNestedEnum = other.OptionalNestedEnum;
2663       }
2664       if (other.OptionalForeignEnum != 0) {
2665         OptionalForeignEnum = other.OptionalForeignEnum;
2666       }
2667       if (other.OptionalAliasedEnum != 0) {
2668         OptionalAliasedEnum = other.OptionalAliasedEnum;
2669       }
2670       if (other.OptionalStringPiece.Length != 0) {
2671         OptionalStringPiece = other.OptionalStringPiece;
2672       }
2673       if (other.OptionalCord.Length != 0) {
2674         OptionalCord = other.OptionalCord;
2675       }
2676       if (other.recursiveMessage_ != null) {
2677         if (recursiveMessage_ == null) {
2678           RecursiveMessage = new global::ProtobufTestMessages.Proto3.TestAllTypesProto3();
2679         }
2680         RecursiveMessage.MergeFrom(other.RecursiveMessage);
2681       }
2682       repeatedInt32_.Add(other.repeatedInt32_);
2683       repeatedInt64_.Add(other.repeatedInt64_);
2684       repeatedUint32_.Add(other.repeatedUint32_);
2685       repeatedUint64_.Add(other.repeatedUint64_);
2686       repeatedSint32_.Add(other.repeatedSint32_);
2687       repeatedSint64_.Add(other.repeatedSint64_);
2688       repeatedFixed32_.Add(other.repeatedFixed32_);
2689       repeatedFixed64_.Add(other.repeatedFixed64_);
2690       repeatedSfixed32_.Add(other.repeatedSfixed32_);
2691       repeatedSfixed64_.Add(other.repeatedSfixed64_);
2692       repeatedFloat_.Add(other.repeatedFloat_);
2693       repeatedDouble_.Add(other.repeatedDouble_);
2694       repeatedBool_.Add(other.repeatedBool_);
2695       repeatedString_.Add(other.repeatedString_);
2696       repeatedBytes_.Add(other.repeatedBytes_);
2697       repeatedNestedMessage_.Add(other.repeatedNestedMessage_);
2698       repeatedForeignMessage_.Add(other.repeatedForeignMessage_);
2699       repeatedNestedEnum_.Add(other.repeatedNestedEnum_);
2700       repeatedForeignEnum_.Add(other.repeatedForeignEnum_);
2701       repeatedStringPiece_.Add(other.repeatedStringPiece_);
2702       repeatedCord_.Add(other.repeatedCord_);
2703       mapInt32Int32_.Add(other.mapInt32Int32_);
2704       mapInt64Int64_.Add(other.mapInt64Int64_);
2705       mapUint32Uint32_.Add(other.mapUint32Uint32_);
2706       mapUint64Uint64_.Add(other.mapUint64Uint64_);
2707       mapSint32Sint32_.Add(other.mapSint32Sint32_);
2708       mapSint64Sint64_.Add(other.mapSint64Sint64_);
2709       mapFixed32Fixed32_.Add(other.mapFixed32Fixed32_);
2710       mapFixed64Fixed64_.Add(other.mapFixed64Fixed64_);
2711       mapSfixed32Sfixed32_.Add(other.mapSfixed32Sfixed32_);
2712       mapSfixed64Sfixed64_.Add(other.mapSfixed64Sfixed64_);
2713       mapInt32Float_.Add(other.mapInt32Float_);
2714       mapInt32Double_.Add(other.mapInt32Double_);
2715       mapBoolBool_.Add(other.mapBoolBool_);
2716       mapStringString_.Add(other.mapStringString_);
2717       mapStringBytes_.Add(other.mapStringBytes_);
2718       mapStringNestedMessage_.Add(other.mapStringNestedMessage_);
2719       mapStringForeignMessage_.Add(other.mapStringForeignMessage_);
2720       mapStringNestedEnum_.Add(other.mapStringNestedEnum_);
2721       mapStringForeignEnum_.Add(other.mapStringForeignEnum_);
2722       if (other.optionalBoolWrapper_ != null) {
2723         if (optionalBoolWrapper_ == null || other.OptionalBoolWrapper != false) {
2724           OptionalBoolWrapper = other.OptionalBoolWrapper;
2725         }
2726       }
2727       if (other.optionalInt32Wrapper_ != null) {
2728         if (optionalInt32Wrapper_ == null || other.OptionalInt32Wrapper != 0) {
2729           OptionalInt32Wrapper = other.OptionalInt32Wrapper;
2730         }
2731       }
2732       if (other.optionalInt64Wrapper_ != null) {
2733         if (optionalInt64Wrapper_ == null || other.OptionalInt64Wrapper != 0L) {
2734           OptionalInt64Wrapper = other.OptionalInt64Wrapper;
2735         }
2736       }
2737       if (other.optionalUint32Wrapper_ != null) {
2738         if (optionalUint32Wrapper_ == null || other.OptionalUint32Wrapper != 0) {
2739           OptionalUint32Wrapper = other.OptionalUint32Wrapper;
2740         }
2741       }
2742       if (other.optionalUint64Wrapper_ != null) {
2743         if (optionalUint64Wrapper_ == null || other.OptionalUint64Wrapper != 0UL) {
2744           OptionalUint64Wrapper = other.OptionalUint64Wrapper;
2745         }
2746       }
2747       if (other.optionalFloatWrapper_ != null) {
2748         if (optionalFloatWrapper_ == null || other.OptionalFloatWrapper != 0F) {
2749           OptionalFloatWrapper = other.OptionalFloatWrapper;
2750         }
2751       }
2752       if (other.optionalDoubleWrapper_ != null) {
2753         if (optionalDoubleWrapper_ == null || other.OptionalDoubleWrapper != 0D) {
2754           OptionalDoubleWrapper = other.OptionalDoubleWrapper;
2755         }
2756       }
2757       if (other.optionalStringWrapper_ != null) {
2758         if (optionalStringWrapper_ == null || other.OptionalStringWrapper != "") {
2759           OptionalStringWrapper = other.OptionalStringWrapper;
2760         }
2761       }
2762       if (other.optionalBytesWrapper_ != null) {
2763         if (optionalBytesWrapper_ == null || other.OptionalBytesWrapper != pb::ByteString.Empty) {
2764           OptionalBytesWrapper = other.OptionalBytesWrapper;
2765         }
2766       }
2767       repeatedBoolWrapper_.Add(other.repeatedBoolWrapper_);
2768       repeatedInt32Wrapper_.Add(other.repeatedInt32Wrapper_);
2769       repeatedInt64Wrapper_.Add(other.repeatedInt64Wrapper_);
2770       repeatedUint32Wrapper_.Add(other.repeatedUint32Wrapper_);
2771       repeatedUint64Wrapper_.Add(other.repeatedUint64Wrapper_);
2772       repeatedFloatWrapper_.Add(other.repeatedFloatWrapper_);
2773       repeatedDoubleWrapper_.Add(other.repeatedDoubleWrapper_);
2774       repeatedStringWrapper_.Add(other.repeatedStringWrapper_);
2775       repeatedBytesWrapper_.Add(other.repeatedBytesWrapper_);
2776       if (other.optionalDuration_ != null) {
2777         if (optionalDuration_ == null) {
2778           OptionalDuration = new global::Google.Protobuf.WellKnownTypes.Duration();
2779         }
2780         OptionalDuration.MergeFrom(other.OptionalDuration);
2781       }
2782       if (other.optionalTimestamp_ != null) {
2783         if (optionalTimestamp_ == null) {
2784           OptionalTimestamp = new global::Google.Protobuf.WellKnownTypes.Timestamp();
2785         }
2786         OptionalTimestamp.MergeFrom(other.OptionalTimestamp);
2787       }
2788       if (other.optionalFieldMask_ != null) {
2789         if (optionalFieldMask_ == null) {
2790           OptionalFieldMask = new global::Google.Protobuf.WellKnownTypes.FieldMask();
2791         }
2792         OptionalFieldMask.MergeFrom(other.OptionalFieldMask);
2793       }
2794       if (other.optionalStruct_ != null) {
2795         if (optionalStruct_ == null) {
2796           OptionalStruct = new global::Google.Protobuf.WellKnownTypes.Struct();
2797         }
2798         OptionalStruct.MergeFrom(other.OptionalStruct);
2799       }
2800       if (other.optionalAny_ != null) {
2801         if (optionalAny_ == null) {
2802           OptionalAny = new global::Google.Protobuf.WellKnownTypes.Any();
2803         }
2804         OptionalAny.MergeFrom(other.OptionalAny);
2805       }
2806       if (other.optionalValue_ != null) {
2807         if (optionalValue_ == null) {
2808           OptionalValue = new global::Google.Protobuf.WellKnownTypes.Value();
2809         }
2810         OptionalValue.MergeFrom(other.OptionalValue);
2811       }
2812       repeatedDuration_.Add(other.repeatedDuration_);
2813       repeatedTimestamp_.Add(other.repeatedTimestamp_);
2814       repeatedFieldmask_.Add(other.repeatedFieldmask_);
2815       repeatedStruct_.Add(other.repeatedStruct_);
2816       repeatedAny_.Add(other.repeatedAny_);
2817       repeatedValue_.Add(other.repeatedValue_);
2818       repeatedListValue_.Add(other.repeatedListValue_);
2819       if (other.Fieldname1 != 0) {
2820         Fieldname1 = other.Fieldname1;
2821       }
2822       if (other.FieldName2 != 0) {
2823         FieldName2 = other.FieldName2;
2824       }
2825       if (other.FieldName3 != 0) {
2826         FieldName3 = other.FieldName3;
2827       }
2828       if (other.FieldName4 != 0) {
2829         FieldName4 = other.FieldName4;
2830       }
2831       if (other.Field0Name5 != 0) {
2832         Field0Name5 = other.Field0Name5;
2833       }
2834       if (other.Field0Name6 != 0) {
2835         Field0Name6 = other.Field0Name6;
2836       }
2837       if (other.FieldName7 != 0) {
2838         FieldName7 = other.FieldName7;
2839       }
2840       if (other.FieldName8 != 0) {
2841         FieldName8 = other.FieldName8;
2842       }
2843       if (other.FieldName9 != 0) {
2844         FieldName9 = other.FieldName9;
2845       }
2846       if (other.FieldName10 != 0) {
2847         FieldName10 = other.FieldName10;
2848       }
2849       if (other.FIELDNAME11 != 0) {
2850         FIELDNAME11 = other.FIELDNAME11;
2851       }
2852       if (other.FIELDName12 != 0) {
2853         FIELDName12 = other.FIELDName12;
2854       }
2855       if (other.FieldName13 != 0) {
2856         FieldName13 = other.FieldName13;
2857       }
2858       if (other.FieldName14 != 0) {
2859         FieldName14 = other.FieldName14;
2860       }
2861       if (other.FieldName15 != 0) {
2862         FieldName15 = other.FieldName15;
2863       }
2864       if (other.FieldName16 != 0) {
2865         FieldName16 = other.FieldName16;
2866       }
2867       if (other.FieldName17 != 0) {
2868         FieldName17 = other.FieldName17;
2869       }
2870       if (other.FieldName18 != 0) {
2871         FieldName18 = other.FieldName18;
2872       }
2873       switch (other.OneofFieldCase) {
2874         case OneofFieldOneofCase.OneofUint32:
2875           OneofUint32 = other.OneofUint32;
2876           break;
2877         case OneofFieldOneofCase.OneofNestedMessage:
2878           if (OneofNestedMessage == null) {
2879             OneofNestedMessage = new global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedMessage();
2880           }
2881           OneofNestedMessage.MergeFrom(other.OneofNestedMessage);
2882           break;
2883         case OneofFieldOneofCase.OneofString:
2884           OneofString = other.OneofString;
2885           break;
2886         case OneofFieldOneofCase.OneofBytes:
2887           OneofBytes = other.OneofBytes;
2888           break;
2889         case OneofFieldOneofCase.OneofBool:
2890           OneofBool = other.OneofBool;
2891           break;
2892         case OneofFieldOneofCase.OneofUint64:
2893           OneofUint64 = other.OneofUint64;
2894           break;
2895         case OneofFieldOneofCase.OneofFloat:
2896           OneofFloat = other.OneofFloat;
2897           break;
2898         case OneofFieldOneofCase.OneofDouble:
2899           OneofDouble = other.OneofDouble;
2900           break;
2901         case OneofFieldOneofCase.OneofEnum:
2902           OneofEnum = other.OneofEnum;
2903           break;
2904       }
2905
2906       _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
2907     }
2908
2909     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2910     public void MergeFrom(pb::CodedInputStream input) {
2911       uint tag;
2912       while ((tag = input.ReadTag()) != 0) {
2913         switch(tag) {
2914           default:
2915             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
2916             break;
2917           case 8: {
2918             OptionalInt32 = input.ReadInt32();
2919             break;
2920           }
2921           case 16: {
2922             OptionalInt64 = input.ReadInt64();
2923             break;
2924           }
2925           case 24: {
2926             OptionalUint32 = input.ReadUInt32();
2927             break;
2928           }
2929           case 32: {
2930             OptionalUint64 = input.ReadUInt64();
2931             break;
2932           }
2933           case 40: {
2934             OptionalSint32 = input.ReadSInt32();
2935             break;
2936           }
2937           case 48: {
2938             OptionalSint64 = input.ReadSInt64();
2939             break;
2940           }
2941           case 61: {
2942             OptionalFixed32 = input.ReadFixed32();
2943             break;
2944           }
2945           case 65: {
2946             OptionalFixed64 = input.ReadFixed64();
2947             break;
2948           }
2949           case 77: {
2950             OptionalSfixed32 = input.ReadSFixed32();
2951             break;
2952           }
2953           case 81: {
2954             OptionalSfixed64 = input.ReadSFixed64();
2955             break;
2956           }
2957           case 93: {
2958             OptionalFloat = input.ReadFloat();
2959             break;
2960           }
2961           case 97: {
2962             OptionalDouble = input.ReadDouble();
2963             break;
2964           }
2965           case 104: {
2966             OptionalBool = input.ReadBool();
2967             break;
2968           }
2969           case 114: {
2970             OptionalString = input.ReadString();
2971             break;
2972           }
2973           case 122: {
2974             OptionalBytes = input.ReadBytes();
2975             break;
2976           }
2977           case 146: {
2978             if (optionalNestedMessage_ == null) {
2979               OptionalNestedMessage = new global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedMessage();
2980             }
2981             input.ReadMessage(OptionalNestedMessage);
2982             break;
2983           }
2984           case 154: {
2985             if (optionalForeignMessage_ == null) {
2986               OptionalForeignMessage = new global::ProtobufTestMessages.Proto3.ForeignMessage();
2987             }
2988             input.ReadMessage(OptionalForeignMessage);
2989             break;
2990           }
2991           case 168: {
2992             OptionalNestedEnum = (global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedEnum) input.ReadEnum();
2993             break;
2994           }
2995           case 176: {
2996             OptionalForeignEnum = (global::ProtobufTestMessages.Proto3.ForeignEnum) input.ReadEnum();
2997             break;
2998           }
2999           case 184: {
3000             OptionalAliasedEnum = (global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.AliasedEnum) input.ReadEnum();
3001             break;
3002           }
3003           case 194: {
3004             OptionalStringPiece = input.ReadString();
3005             break;
3006           }
3007           case 202: {
3008             OptionalCord = input.ReadString();
3009             break;
3010           }
3011           case 218: {
3012             if (recursiveMessage_ == null) {
3013               RecursiveMessage = new global::ProtobufTestMessages.Proto3.TestAllTypesProto3();
3014             }
3015             input.ReadMessage(RecursiveMessage);
3016             break;
3017           }
3018           case 250:
3019           case 248: {
3020             repeatedInt32_.AddEntriesFrom(input, _repeated_repeatedInt32_codec);
3021             break;
3022           }
3023           case 258:
3024           case 256: {
3025             repeatedInt64_.AddEntriesFrom(input, _repeated_repeatedInt64_codec);
3026             break;
3027           }
3028           case 266:
3029           case 264: {
3030             repeatedUint32_.AddEntriesFrom(input, _repeated_repeatedUint32_codec);
3031             break;
3032           }
3033           case 274:
3034           case 272: {
3035             repeatedUint64_.AddEntriesFrom(input, _repeated_repeatedUint64_codec);
3036             break;
3037           }
3038           case 282:
3039           case 280: {
3040             repeatedSint32_.AddEntriesFrom(input, _repeated_repeatedSint32_codec);
3041             break;
3042           }
3043           case 290:
3044           case 288: {
3045             repeatedSint64_.AddEntriesFrom(input, _repeated_repeatedSint64_codec);
3046             break;
3047           }
3048           case 298:
3049           case 301: {
3050             repeatedFixed32_.AddEntriesFrom(input, _repeated_repeatedFixed32_codec);
3051             break;
3052           }
3053           case 306:
3054           case 305: {
3055             repeatedFixed64_.AddEntriesFrom(input, _repeated_repeatedFixed64_codec);
3056             break;
3057           }
3058           case 314:
3059           case 317: {
3060             repeatedSfixed32_.AddEntriesFrom(input, _repeated_repeatedSfixed32_codec);
3061             break;
3062           }
3063           case 322:
3064           case 321: {
3065             repeatedSfixed64_.AddEntriesFrom(input, _repeated_repeatedSfixed64_codec);
3066             break;
3067           }
3068           case 330:
3069           case 333: {
3070             repeatedFloat_.AddEntriesFrom(input, _repeated_repeatedFloat_codec);
3071             break;
3072           }
3073           case 338:
3074           case 337: {
3075             repeatedDouble_.AddEntriesFrom(input, _repeated_repeatedDouble_codec);
3076             break;
3077           }
3078           case 346:
3079           case 344: {
3080             repeatedBool_.AddEntriesFrom(input, _repeated_repeatedBool_codec);
3081             break;
3082           }
3083           case 354: {
3084             repeatedString_.AddEntriesFrom(input, _repeated_repeatedString_codec);
3085             break;
3086           }
3087           case 362: {
3088             repeatedBytes_.AddEntriesFrom(input, _repeated_repeatedBytes_codec);
3089             break;
3090           }
3091           case 386: {
3092             repeatedNestedMessage_.AddEntriesFrom(input, _repeated_repeatedNestedMessage_codec);
3093             break;
3094           }
3095           case 394: {
3096             repeatedForeignMessage_.AddEntriesFrom(input, _repeated_repeatedForeignMessage_codec);
3097             break;
3098           }
3099           case 410:
3100           case 408: {
3101             repeatedNestedEnum_.AddEntriesFrom(input, _repeated_repeatedNestedEnum_codec);
3102             break;
3103           }
3104           case 418:
3105           case 416: {
3106             repeatedForeignEnum_.AddEntriesFrom(input, _repeated_repeatedForeignEnum_codec);
3107             break;
3108           }
3109           case 434: {
3110             repeatedStringPiece_.AddEntriesFrom(input, _repeated_repeatedStringPiece_codec);
3111             break;
3112           }
3113           case 442: {
3114             repeatedCord_.AddEntriesFrom(input, _repeated_repeatedCord_codec);
3115             break;
3116           }
3117           case 450: {
3118             mapInt32Int32_.AddEntriesFrom(input, _map_mapInt32Int32_codec);
3119             break;
3120           }
3121           case 458: {
3122             mapInt64Int64_.AddEntriesFrom(input, _map_mapInt64Int64_codec);
3123             break;
3124           }
3125           case 466: {
3126             mapUint32Uint32_.AddEntriesFrom(input, _map_mapUint32Uint32_codec);
3127             break;
3128           }
3129           case 474: {
3130             mapUint64Uint64_.AddEntriesFrom(input, _map_mapUint64Uint64_codec);
3131             break;
3132           }
3133           case 482: {
3134             mapSint32Sint32_.AddEntriesFrom(input, _map_mapSint32Sint32_codec);
3135             break;
3136           }
3137           case 490: {
3138             mapSint64Sint64_.AddEntriesFrom(input, _map_mapSint64Sint64_codec);
3139             break;
3140           }
3141           case 498: {
3142             mapFixed32Fixed32_.AddEntriesFrom(input, _map_mapFixed32Fixed32_codec);
3143             break;
3144           }
3145           case 506: {
3146             mapFixed64Fixed64_.AddEntriesFrom(input, _map_mapFixed64Fixed64_codec);
3147             break;
3148           }
3149           case 514: {
3150             mapSfixed32Sfixed32_.AddEntriesFrom(input, _map_mapSfixed32Sfixed32_codec);
3151             break;
3152           }
3153           case 522: {
3154             mapSfixed64Sfixed64_.AddEntriesFrom(input, _map_mapSfixed64Sfixed64_codec);
3155             break;
3156           }
3157           case 530: {
3158             mapInt32Float_.AddEntriesFrom(input, _map_mapInt32Float_codec);
3159             break;
3160           }
3161           case 538: {
3162             mapInt32Double_.AddEntriesFrom(input, _map_mapInt32Double_codec);
3163             break;
3164           }
3165           case 546: {
3166             mapBoolBool_.AddEntriesFrom(input, _map_mapBoolBool_codec);
3167             break;
3168           }
3169           case 554: {
3170             mapStringString_.AddEntriesFrom(input, _map_mapStringString_codec);
3171             break;
3172           }
3173           case 562: {
3174             mapStringBytes_.AddEntriesFrom(input, _map_mapStringBytes_codec);
3175             break;
3176           }
3177           case 570: {
3178             mapStringNestedMessage_.AddEntriesFrom(input, _map_mapStringNestedMessage_codec);
3179             break;
3180           }
3181           case 578: {
3182             mapStringForeignMessage_.AddEntriesFrom(input, _map_mapStringForeignMessage_codec);
3183             break;
3184           }
3185           case 586: {
3186             mapStringNestedEnum_.AddEntriesFrom(input, _map_mapStringNestedEnum_codec);
3187             break;
3188           }
3189           case 594: {
3190             mapStringForeignEnum_.AddEntriesFrom(input, _map_mapStringForeignEnum_codec);
3191             break;
3192           }
3193           case 888: {
3194             OneofUint32 = input.ReadUInt32();
3195             break;
3196           }
3197           case 898: {
3198             global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedMessage subBuilder = new global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Types.NestedMessage();
3199             if (oneofFieldCase_ == OneofFieldOneofCase.OneofNestedMessage) {
3200               subBuilder.MergeFrom(OneofNestedMessage);
3201             }
3202             input.ReadMessage(subBuilder);
3203             OneofNestedMessage = subBuilder;
3204             break;
3205           }
3206           case 906: {
3207             OneofString = input.ReadString();
3208             break;
3209           }
3210           case 914: {
3211             OneofBytes = input.ReadBytes();
3212             break;
3213           }
3214           case 920: {
3215             OneofBool = input.ReadBool();
3216             break;
3217           }
3218           case 928: {
3219             OneofUint64 = input.ReadUInt64();
3220             break;
3221           }
3222           case 941: {
3223             OneofFloat = input.ReadFloat();
3224             break;
3225           }
3226           case 945: {
3227             OneofDouble = input.ReadDouble();
3228             break;
3229           }
3230           case 952: {
3231             oneofField_ = input.ReadEnum();
3232             oneofFieldCase_ = OneofFieldOneofCase.OneofEnum;
3233             break;
3234           }
3235           case 1610: {
3236             bool? value = _single_optionalBoolWrapper_codec.Read(input);
3237             if (optionalBoolWrapper_ == null || value != false) {
3238               OptionalBoolWrapper = value;
3239             }
3240             break;
3241           }
3242           case 1618: {
3243             int? value = _single_optionalInt32Wrapper_codec.Read(input);
3244             if (optionalInt32Wrapper_ == null || value != 0) {
3245               OptionalInt32Wrapper = value;
3246             }
3247             break;
3248           }
3249           case 1626: {
3250             long? value = _single_optionalInt64Wrapper_codec.Read(input);
3251             if (optionalInt64Wrapper_ == null || value != 0L) {
3252               OptionalInt64Wrapper = value;
3253             }
3254             break;
3255           }
3256           case 1634: {
3257             uint? value = _single_optionalUint32Wrapper_codec.Read(input);
3258             if (optionalUint32Wrapper_ == null || value != 0) {
3259               OptionalUint32Wrapper = value;
3260             }
3261             break;
3262           }
3263           case 1642: {
3264             ulong? value = _single_optionalUint64Wrapper_codec.Read(input);
3265             if (optionalUint64Wrapper_ == null || value != 0UL) {
3266               OptionalUint64Wrapper = value;
3267             }
3268             break;
3269           }
3270           case 1650: {
3271             float? value = _single_optionalFloatWrapper_codec.Read(input);
3272             if (optionalFloatWrapper_ == null || value != 0F) {
3273               OptionalFloatWrapper = value;
3274             }
3275             break;
3276           }
3277           case 1658: {
3278             double? value = _single_optionalDoubleWrapper_codec.Read(input);
3279             if (optionalDoubleWrapper_ == null || value != 0D) {
3280               OptionalDoubleWrapper = value;
3281             }
3282             break;
3283           }
3284           case 1666: {
3285             string value = _single_optionalStringWrapper_codec.Read(input);
3286             if (optionalStringWrapper_ == null || value != "") {
3287               OptionalStringWrapper = value;
3288             }
3289             break;
3290           }
3291           case 1674: {
3292             pb::ByteString value = _single_optionalBytesWrapper_codec.Read(input);
3293             if (optionalBytesWrapper_ == null || value != pb::ByteString.Empty) {
3294               OptionalBytesWrapper = value;
3295             }
3296             break;
3297           }
3298           case 1690: {
3299             repeatedBoolWrapper_.AddEntriesFrom(input, _repeated_repeatedBoolWrapper_codec);
3300             break;
3301           }
3302           case 1698: {
3303             repeatedInt32Wrapper_.AddEntriesFrom(input, _repeated_repeatedInt32Wrapper_codec);
3304             break;
3305           }
3306           case 1706: {
3307             repeatedInt64Wrapper_.AddEntriesFrom(input, _repeated_repeatedInt64Wrapper_codec);
3308             break;
3309           }
3310           case 1714: {
3311             repeatedUint32Wrapper_.AddEntriesFrom(input, _repeated_repeatedUint32Wrapper_codec);
3312             break;
3313           }
3314           case 1722: {
3315             repeatedUint64Wrapper_.AddEntriesFrom(input, _repeated_repeatedUint64Wrapper_codec);
3316             break;
3317           }
3318           case 1730: {
3319             repeatedFloatWrapper_.AddEntriesFrom(input, _repeated_repeatedFloatWrapper_codec);
3320             break;
3321           }
3322           case 1738: {
3323             repeatedDoubleWrapper_.AddEntriesFrom(input, _repeated_repeatedDoubleWrapper_codec);
3324             break;
3325           }
3326           case 1746: {
3327             repeatedStringWrapper_.AddEntriesFrom(input, _repeated_repeatedStringWrapper_codec);
3328             break;
3329           }
3330           case 1754: {
3331             repeatedBytesWrapper_.AddEntriesFrom(input, _repeated_repeatedBytesWrapper_codec);
3332             break;
3333           }
3334           case 2410: {
3335             if (optionalDuration_ == null) {
3336               OptionalDuration = new global::Google.Protobuf.WellKnownTypes.Duration();
3337             }
3338             input.ReadMessage(OptionalDuration);
3339             break;
3340           }
3341           case 2418: {
3342             if (optionalTimestamp_ == null) {
3343               OptionalTimestamp = new global::Google.Protobuf.WellKnownTypes.Timestamp();
3344             }
3345             input.ReadMessage(OptionalTimestamp);
3346             break;
3347           }
3348           case 2426: {
3349             if (optionalFieldMask_ == null) {
3350               OptionalFieldMask = new global::Google.Protobuf.WellKnownTypes.FieldMask();
3351             }
3352             input.ReadMessage(OptionalFieldMask);
3353             break;
3354           }
3355           case 2434: {
3356             if (optionalStruct_ == null) {
3357               OptionalStruct = new global::Google.Protobuf.WellKnownTypes.Struct();
3358             }
3359             input.ReadMessage(OptionalStruct);
3360             break;
3361           }
3362           case 2442: {
3363             if (optionalAny_ == null) {
3364               OptionalAny = new global::Google.Protobuf.WellKnownTypes.Any();
3365             }
3366             input.ReadMessage(OptionalAny);
3367             break;
3368           }
3369           case 2450: {
3370             if (optionalValue_ == null) {
3371               OptionalValue = new global::Google.Protobuf.WellKnownTypes.Value();
3372             }
3373             input.ReadMessage(OptionalValue);
3374             break;
3375           }
3376           case 2490: {
3377             repeatedDuration_.AddEntriesFrom(input, _repeated_repeatedDuration_codec);
3378             break;
3379           }
3380           case 2498: {
3381             repeatedTimestamp_.AddEntriesFrom(input, _repeated_repeatedTimestamp_codec);
3382             break;
3383           }
3384           case 2506: {
3385             repeatedFieldmask_.AddEntriesFrom(input, _repeated_repeatedFieldmask_codec);
3386             break;
3387           }
3388           case 2522: {
3389             repeatedAny_.AddEntriesFrom(input, _repeated_repeatedAny_codec);
3390             break;
3391           }
3392           case 2530: {
3393             repeatedValue_.AddEntriesFrom(input, _repeated_repeatedValue_codec);
3394             break;
3395           }
3396           case 2538: {
3397             repeatedListValue_.AddEntriesFrom(input, _repeated_repeatedListValue_codec);
3398             break;
3399           }
3400           case 2594: {
3401             repeatedStruct_.AddEntriesFrom(input, _repeated_repeatedStruct_codec);
3402             break;
3403           }
3404           case 3208: {
3405             Fieldname1 = input.ReadInt32();
3406             break;
3407           }
3408           case 3216: {
3409             FieldName2 = input.ReadInt32();
3410             break;
3411           }
3412           case 3224: {
3413             FieldName3 = input.ReadInt32();
3414             break;
3415           }
3416           case 3232: {
3417             FieldName4 = input.ReadInt32();
3418             break;
3419           }
3420           case 3240: {
3421             Field0Name5 = input.ReadInt32();
3422             break;
3423           }
3424           case 3248: {
3425             Field0Name6 = input.ReadInt32();
3426             break;
3427           }
3428           case 3256: {
3429             FieldName7 = input.ReadInt32();
3430             break;
3431           }
3432           case 3264: {
3433             FieldName8 = input.ReadInt32();
3434             break;
3435           }
3436           case 3272: {
3437             FieldName9 = input.ReadInt32();
3438             break;
3439           }
3440           case 3280: {
3441             FieldName10 = input.ReadInt32();
3442             break;
3443           }
3444           case 3288: {
3445             FIELDNAME11 = input.ReadInt32();
3446             break;
3447           }
3448           case 3296: {
3449             FIELDName12 = input.ReadInt32();
3450             break;
3451           }
3452           case 3304: {
3453             FieldName13 = input.ReadInt32();
3454             break;
3455           }
3456           case 3312: {
3457             FieldName14 = input.ReadInt32();
3458             break;
3459           }
3460           case 3320: {
3461             FieldName15 = input.ReadInt32();
3462             break;
3463           }
3464           case 3328: {
3465             FieldName16 = input.ReadInt32();
3466             break;
3467           }
3468           case 3336: {
3469             FieldName17 = input.ReadInt32();
3470             break;
3471           }
3472           case 3344: {
3473             FieldName18 = input.ReadInt32();
3474             break;
3475           }
3476         }
3477       }
3478     }
3479
3480     #region Nested types
3481     /// <summary>Container for nested types declared in the TestAllTypesProto3 message type.</summary>
3482     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3483     public static partial class Types {
3484       public enum NestedEnum {
3485         [pbr::OriginalName("FOO")] Foo = 0,
3486         [pbr::OriginalName("BAR")] Bar = 1,
3487         [pbr::OriginalName("BAZ")] Baz = 2,
3488         /// <summary>
3489         /// Intentionally negative.
3490         /// </summary>
3491         [pbr::OriginalName("NEG")] Neg = -1,
3492       }
3493
3494       public enum AliasedEnum {
3495         [pbr::OriginalName("ALIAS_FOO")] AliasFoo = 0,
3496         [pbr::OriginalName("ALIAS_BAR")] AliasBar = 1,
3497         [pbr::OriginalName("ALIAS_BAZ")] AliasBaz = 2,
3498         [pbr::OriginalName("QUX", PreferredAlias = false)] Qux = 2,
3499         [pbr::OriginalName("qux", PreferredAlias = false)] Qux_ = 2,
3500         [pbr::OriginalName("bAz", PreferredAlias = false)] BAz = 2,
3501       }
3502
3503       public sealed partial class NestedMessage : pb::IMessage<NestedMessage> {
3504         private static readonly pb::MessageParser<NestedMessage> _parser = new pb::MessageParser<NestedMessage>(() => new NestedMessage());
3505         private pb::UnknownFieldSet _unknownFields;
3506         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3507         public static pb::MessageParser<NestedMessage> Parser { get { return _parser; } }
3508
3509         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3510         public static pbr::MessageDescriptor Descriptor {
3511           get { return global::ProtobufTestMessages.Proto3.TestAllTypesProto3.Descriptor.NestedTypes[0]; }
3512         }
3513
3514         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3515         pbr::MessageDescriptor pb::IMessage.Descriptor {
3516           get { return Descriptor; }
3517         }
3518
3519         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3520         public NestedMessage() {
3521           OnConstruction();
3522         }
3523
3524         partial void OnConstruction();
3525
3526         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3527         public NestedMessage(NestedMessage other) : this() {
3528           a_ = other.a_;
3529           corecursive_ = other.corecursive_ != null ? other.corecursive_.Clone() : null;
3530           _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
3531         }
3532
3533         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3534         public NestedMessage Clone() {
3535           return new NestedMessage(this);
3536         }
3537
3538         /// <summary>Field number for the "a" field.</summary>
3539         public const int AFieldNumber = 1;
3540         private int a_;
3541         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3542         public int A {
3543           get { return a_; }
3544           set {
3545             a_ = value;
3546           }
3547         }
3548
3549         /// <summary>Field number for the "corecursive" field.</summary>
3550         public const int CorecursiveFieldNumber = 2;
3551         private global::ProtobufTestMessages.Proto3.TestAllTypesProto3 corecursive_;
3552         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3553         public global::ProtobufTestMessages.Proto3.TestAllTypesProto3 Corecursive {
3554           get { return corecursive_; }
3555           set {
3556             corecursive_ = value;
3557           }
3558         }
3559
3560         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3561         public override bool Equals(object other) {
3562           return Equals(other as NestedMessage);
3563         }
3564
3565         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3566         public bool Equals(NestedMessage other) {
3567           if (ReferenceEquals(other, null)) {
3568             return false;
3569           }
3570           if (ReferenceEquals(other, this)) {
3571             return true;
3572           }
3573           if (A != other.A) return false;
3574           if (!object.Equals(Corecursive, other.Corecursive)) return false;
3575           return Equals(_unknownFields, other._unknownFields);
3576         }
3577
3578         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3579         public override int GetHashCode() {
3580           int hash = 1;
3581           if (A != 0) hash ^= A.GetHashCode();
3582           if (corecursive_ != null) hash ^= Corecursive.GetHashCode();
3583           if (_unknownFields != null) {
3584             hash ^= _unknownFields.GetHashCode();
3585           }
3586           return hash;
3587         }
3588
3589         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3590         public override string ToString() {
3591           return pb::JsonFormatter.ToDiagnosticString(this);
3592         }
3593
3594         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3595         public void WriteTo(pb::CodedOutputStream output) {
3596           if (A != 0) {
3597             output.WriteRawTag(8);
3598             output.WriteInt32(A);
3599           }
3600           if (corecursive_ != null) {
3601             output.WriteRawTag(18);
3602             output.WriteMessage(Corecursive);
3603           }
3604           if (_unknownFields != null) {
3605             _unknownFields.WriteTo(output);
3606           }
3607         }
3608
3609         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3610         public int CalculateSize() {
3611           int size = 0;
3612           if (A != 0) {
3613             size += 1 + pb::CodedOutputStream.ComputeInt32Size(A);
3614           }
3615           if (corecursive_ != null) {
3616             size += 1 + pb::CodedOutputStream.ComputeMessageSize(Corecursive);
3617           }
3618           if (_unknownFields != null) {
3619             size += _unknownFields.CalculateSize();
3620           }
3621           return size;
3622         }
3623
3624         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3625         public void MergeFrom(NestedMessage other) {
3626           if (other == null) {
3627             return;
3628           }
3629           if (other.A != 0) {
3630             A = other.A;
3631           }
3632           if (other.corecursive_ != null) {
3633             if (corecursive_ == null) {
3634               Corecursive = new global::ProtobufTestMessages.Proto3.TestAllTypesProto3();
3635             }
3636             Corecursive.MergeFrom(other.Corecursive);
3637           }
3638           _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
3639         }
3640
3641         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3642         public void MergeFrom(pb::CodedInputStream input) {
3643           uint tag;
3644           while ((tag = input.ReadTag()) != 0) {
3645             switch(tag) {
3646               default:
3647                 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
3648                 break;
3649               case 8: {
3650                 A = input.ReadInt32();
3651                 break;
3652               }
3653               case 18: {
3654                 if (corecursive_ == null) {
3655                   Corecursive = new global::ProtobufTestMessages.Proto3.TestAllTypesProto3();
3656                 }
3657                 input.ReadMessage(Corecursive);
3658                 break;
3659               }
3660             }
3661           }
3662         }
3663
3664       }
3665
3666     }
3667     #endregion
3668
3669   }
3670
3671   public sealed partial class ForeignMessage : pb::IMessage<ForeignMessage> {
3672     private static readonly pb::MessageParser<ForeignMessage> _parser = new pb::MessageParser<ForeignMessage>(() => new ForeignMessage());
3673     private pb::UnknownFieldSet _unknownFields;
3674     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3675     public static pb::MessageParser<ForeignMessage> Parser { get { return _parser; } }
3676
3677     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3678     public static pbr::MessageDescriptor Descriptor {
3679       get { return global::ProtobufTestMessages.Proto3.TestMessagesProto3Reflection.Descriptor.MessageTypes[1]; }
3680     }
3681
3682     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3683     pbr::MessageDescriptor pb::IMessage.Descriptor {
3684       get { return Descriptor; }
3685     }
3686
3687     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3688     public ForeignMessage() {
3689       OnConstruction();
3690     }
3691
3692     partial void OnConstruction();
3693
3694     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3695     public ForeignMessage(ForeignMessage other) : this() {
3696       c_ = other.c_;
3697       _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
3698     }
3699
3700     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3701     public ForeignMessage Clone() {
3702       return new ForeignMessage(this);
3703     }
3704
3705     /// <summary>Field number for the "c" field.</summary>
3706     public const int CFieldNumber = 1;
3707     private int c_;
3708     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3709     public int C {
3710       get { return c_; }
3711       set {
3712         c_ = value;
3713       }
3714     }
3715
3716     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3717     public override bool Equals(object other) {
3718       return Equals(other as ForeignMessage);
3719     }
3720
3721     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3722     public bool Equals(ForeignMessage other) {
3723       if (ReferenceEquals(other, null)) {
3724         return false;
3725       }
3726       if (ReferenceEquals(other, this)) {
3727         return true;
3728       }
3729       if (C != other.C) return false;
3730       return Equals(_unknownFields, other._unknownFields);
3731     }
3732
3733     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3734     public override int GetHashCode() {
3735       int hash = 1;
3736       if (C != 0) hash ^= C.GetHashCode();
3737       if (_unknownFields != null) {
3738         hash ^= _unknownFields.GetHashCode();
3739       }
3740       return hash;
3741     }
3742
3743     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3744     public override string ToString() {
3745       return pb::JsonFormatter.ToDiagnosticString(this);
3746     }
3747
3748     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3749     public void WriteTo(pb::CodedOutputStream output) {
3750       if (C != 0) {
3751         output.WriteRawTag(8);
3752         output.WriteInt32(C);
3753       }
3754       if (_unknownFields != null) {
3755         _unknownFields.WriteTo(output);
3756       }
3757     }
3758
3759     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3760     public int CalculateSize() {
3761       int size = 0;
3762       if (C != 0) {
3763         size += 1 + pb::CodedOutputStream.ComputeInt32Size(C);
3764       }
3765       if (_unknownFields != null) {
3766         size += _unknownFields.CalculateSize();
3767       }
3768       return size;
3769     }
3770
3771     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3772     public void MergeFrom(ForeignMessage other) {
3773       if (other == null) {
3774         return;
3775       }
3776       if (other.C != 0) {
3777         C = other.C;
3778       }
3779       _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
3780     }
3781
3782     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3783     public void MergeFrom(pb::CodedInputStream input) {
3784       uint tag;
3785       while ((tag = input.ReadTag()) != 0) {
3786         switch(tag) {
3787           default:
3788             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
3789             break;
3790           case 8: {
3791             C = input.ReadInt32();
3792             break;
3793           }
3794         }
3795       }
3796     }
3797
3798   }
3799
3800   #endregion
3801
3802 }
3803
3804 #endregion Designer generated code