github.com/cosmos/cosmos-sdk@v0.50.10/testutil/testdata/unknonwnproto.pb.go (about)

     1  // Code generated by protoc-gen-gogo. DO NOT EDIT.
     2  // source: testpb/unknonwnproto.proto
     3  
     4  package testdata
     5  
     6  import (
     7  	encoding_binary "encoding/binary"
     8  	fmt "fmt"
     9  	types "github.com/cosmos/cosmos-sdk/codec/types"
    10  	tx "github.com/cosmos/cosmos-sdk/types/tx"
    11  	_ "github.com/cosmos/gogoproto/gogoproto"
    12  	proto "github.com/cosmos/gogoproto/proto"
    13  	io "io"
    14  	math "math"
    15  	math_bits "math/bits"
    16  )
    17  
    18  // Reference imports to suppress errors if they are not otherwise used.
    19  var _ = proto.Marshal
    20  var _ = fmt.Errorf
    21  var _ = math.Inf
    22  
    23  // This is a compile-time assertion to ensure that this generated file
    24  // is compatible with the proto package it is being compiled against.
    25  // A compilation error at this line likely means your copy of the
    26  // proto package needs to be updated.
    27  const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package
    28  
    29  type Customer2_City int32
    30  
    31  const (
    32  	Customer2_Laos       Customer2_City = 0
    33  	Customer2_LosAngeles Customer2_City = 1
    34  	Customer2_PaloAlto   Customer2_City = 2
    35  	Customer2_Moscow     Customer2_City = 3
    36  	Customer2_Nairobi    Customer2_City = 4
    37  )
    38  
    39  var Customer2_City_name = map[int32]string{
    40  	0: "Laos",
    41  	1: "LosAngeles",
    42  	2: "PaloAlto",
    43  	3: "Moscow",
    44  	4: "Nairobi",
    45  }
    46  
    47  var Customer2_City_value = map[string]int32{
    48  	"Laos":       0,
    49  	"LosAngeles": 1,
    50  	"PaloAlto":   2,
    51  	"Moscow":     3,
    52  	"Nairobi":    4,
    53  }
    54  
    55  func (x Customer2_City) String() string {
    56  	return proto.EnumName(Customer2_City_name, int32(x))
    57  }
    58  
    59  func (Customer2_City) EnumDescriptor() ([]byte, []int) {
    60  	return fileDescriptor_fe4560133be9209a, []int{1, 0}
    61  }
    62  
    63  type Customer1 struct {
    64  	Id              int32   `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
    65  	Name            string  `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
    66  	SubscriptionFee float32 `protobuf:"fixed32,3,opt,name=subscription_fee,json=subscriptionFee,proto3" json:"subscription_fee,omitempty"`
    67  	Payment         string  `protobuf:"bytes,7,opt,name=payment,proto3" json:"payment,omitempty"`
    68  }
    69  
    70  func (m *Customer1) Reset()         { *m = Customer1{} }
    71  func (m *Customer1) String() string { return proto.CompactTextString(m) }
    72  func (*Customer1) ProtoMessage()    {}
    73  func (*Customer1) Descriptor() ([]byte, []int) {
    74  	return fileDescriptor_fe4560133be9209a, []int{0}
    75  }
    76  func (m *Customer1) XXX_Unmarshal(b []byte) error {
    77  	return m.Unmarshal(b)
    78  }
    79  func (m *Customer1) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
    80  	if deterministic {
    81  		return xxx_messageInfo_Customer1.Marshal(b, m, deterministic)
    82  	} else {
    83  		b = b[:cap(b)]
    84  		n, err := m.MarshalToSizedBuffer(b)
    85  		if err != nil {
    86  			return nil, err
    87  		}
    88  		return b[:n], nil
    89  	}
    90  }
    91  func (m *Customer1) XXX_Merge(src proto.Message) {
    92  	xxx_messageInfo_Customer1.Merge(m, src)
    93  }
    94  func (m *Customer1) XXX_Size() int {
    95  	return m.Size()
    96  }
    97  func (m *Customer1) XXX_DiscardUnknown() {
    98  	xxx_messageInfo_Customer1.DiscardUnknown(m)
    99  }
   100  
   101  var xxx_messageInfo_Customer1 proto.InternalMessageInfo
   102  
   103  func (m *Customer1) GetId() int32 {
   104  	if m != nil {
   105  		return m.Id
   106  	}
   107  	return 0
   108  }
   109  
   110  func (m *Customer1) GetName() string {
   111  	if m != nil {
   112  		return m.Name
   113  	}
   114  	return ""
   115  }
   116  
   117  func (m *Customer1) GetSubscriptionFee() float32 {
   118  	if m != nil {
   119  		return m.SubscriptionFee
   120  	}
   121  	return 0
   122  }
   123  
   124  func (m *Customer1) GetPayment() string {
   125  	if m != nil {
   126  		return m.Payment
   127  	}
   128  	return ""
   129  }
   130  
   131  type Customer2 struct {
   132  	Id            int32          `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
   133  	Industry      int32          `protobuf:"varint,2,opt,name=industry,proto3" json:"industry,omitempty"`
   134  	Name          string         `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
   135  	Fewer         float32        `protobuf:"fixed32,4,opt,name=fewer,proto3" json:"fewer,omitempty"`
   136  	Reserved      int64          `protobuf:"varint,1047,opt,name=reserved,proto3" json:"reserved,omitempty"`
   137  	City          Customer2_City `protobuf:"varint,6,opt,name=city,proto3,enum=testpb.Customer2_City" json:"city,omitempty"`
   138  	Miscellaneous *types.Any     `protobuf:"bytes,10,opt,name=miscellaneous,proto3" json:"miscellaneous,omitempty"`
   139  }
   140  
   141  func (m *Customer2) Reset()         { *m = Customer2{} }
   142  func (m *Customer2) String() string { return proto.CompactTextString(m) }
   143  func (*Customer2) ProtoMessage()    {}
   144  func (*Customer2) Descriptor() ([]byte, []int) {
   145  	return fileDescriptor_fe4560133be9209a, []int{1}
   146  }
   147  func (m *Customer2) XXX_Unmarshal(b []byte) error {
   148  	return m.Unmarshal(b)
   149  }
   150  func (m *Customer2) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   151  	if deterministic {
   152  		return xxx_messageInfo_Customer2.Marshal(b, m, deterministic)
   153  	} else {
   154  		b = b[:cap(b)]
   155  		n, err := m.MarshalToSizedBuffer(b)
   156  		if err != nil {
   157  			return nil, err
   158  		}
   159  		return b[:n], nil
   160  	}
   161  }
   162  func (m *Customer2) XXX_Merge(src proto.Message) {
   163  	xxx_messageInfo_Customer2.Merge(m, src)
   164  }
   165  func (m *Customer2) XXX_Size() int {
   166  	return m.Size()
   167  }
   168  func (m *Customer2) XXX_DiscardUnknown() {
   169  	xxx_messageInfo_Customer2.DiscardUnknown(m)
   170  }
   171  
   172  var xxx_messageInfo_Customer2 proto.InternalMessageInfo
   173  
   174  func (m *Customer2) GetId() int32 {
   175  	if m != nil {
   176  		return m.Id
   177  	}
   178  	return 0
   179  }
   180  
   181  func (m *Customer2) GetIndustry() int32 {
   182  	if m != nil {
   183  		return m.Industry
   184  	}
   185  	return 0
   186  }
   187  
   188  func (m *Customer2) GetName() string {
   189  	if m != nil {
   190  		return m.Name
   191  	}
   192  	return ""
   193  }
   194  
   195  func (m *Customer2) GetFewer() float32 {
   196  	if m != nil {
   197  		return m.Fewer
   198  	}
   199  	return 0
   200  }
   201  
   202  func (m *Customer2) GetReserved() int64 {
   203  	if m != nil {
   204  		return m.Reserved
   205  	}
   206  	return 0
   207  }
   208  
   209  func (m *Customer2) GetCity() Customer2_City {
   210  	if m != nil {
   211  		return m.City
   212  	}
   213  	return Customer2_Laos
   214  }
   215  
   216  func (m *Customer2) GetMiscellaneous() *types.Any {
   217  	if m != nil {
   218  		return m.Miscellaneous
   219  	}
   220  	return nil
   221  }
   222  
   223  type Nested4A struct {
   224  	Id   int32  `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
   225  	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
   226  }
   227  
   228  func (m *Nested4A) Reset()         { *m = Nested4A{} }
   229  func (m *Nested4A) String() string { return proto.CompactTextString(m) }
   230  func (*Nested4A) ProtoMessage()    {}
   231  func (*Nested4A) Descriptor() ([]byte, []int) {
   232  	return fileDescriptor_fe4560133be9209a, []int{2}
   233  }
   234  func (m *Nested4A) XXX_Unmarshal(b []byte) error {
   235  	return m.Unmarshal(b)
   236  }
   237  func (m *Nested4A) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   238  	if deterministic {
   239  		return xxx_messageInfo_Nested4A.Marshal(b, m, deterministic)
   240  	} else {
   241  		b = b[:cap(b)]
   242  		n, err := m.MarshalToSizedBuffer(b)
   243  		if err != nil {
   244  			return nil, err
   245  		}
   246  		return b[:n], nil
   247  	}
   248  }
   249  func (m *Nested4A) XXX_Merge(src proto.Message) {
   250  	xxx_messageInfo_Nested4A.Merge(m, src)
   251  }
   252  func (m *Nested4A) XXX_Size() int {
   253  	return m.Size()
   254  }
   255  func (m *Nested4A) XXX_DiscardUnknown() {
   256  	xxx_messageInfo_Nested4A.DiscardUnknown(m)
   257  }
   258  
   259  var xxx_messageInfo_Nested4A proto.InternalMessageInfo
   260  
   261  func (m *Nested4A) GetId() int32 {
   262  	if m != nil {
   263  		return m.Id
   264  	}
   265  	return 0
   266  }
   267  
   268  func (m *Nested4A) GetName() string {
   269  	if m != nil {
   270  		return m.Name
   271  	}
   272  	return ""
   273  }
   274  
   275  type Nested3A struct {
   276  	Id    int32               `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
   277  	Name  string              `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
   278  	A4    []*Nested4A         `protobuf:"bytes,4,rep,name=a4,proto3" json:"a4,omitempty"`
   279  	Index map[int64]*Nested4A `protobuf:"bytes,5,rep,name=index,proto3" json:"index,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   280  }
   281  
   282  func (m *Nested3A) Reset()         { *m = Nested3A{} }
   283  func (m *Nested3A) String() string { return proto.CompactTextString(m) }
   284  func (*Nested3A) ProtoMessage()    {}
   285  func (*Nested3A) Descriptor() ([]byte, []int) {
   286  	return fileDescriptor_fe4560133be9209a, []int{3}
   287  }
   288  func (m *Nested3A) XXX_Unmarshal(b []byte) error {
   289  	return m.Unmarshal(b)
   290  }
   291  func (m *Nested3A) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   292  	if deterministic {
   293  		return xxx_messageInfo_Nested3A.Marshal(b, m, deterministic)
   294  	} else {
   295  		b = b[:cap(b)]
   296  		n, err := m.MarshalToSizedBuffer(b)
   297  		if err != nil {
   298  			return nil, err
   299  		}
   300  		return b[:n], nil
   301  	}
   302  }
   303  func (m *Nested3A) XXX_Merge(src proto.Message) {
   304  	xxx_messageInfo_Nested3A.Merge(m, src)
   305  }
   306  func (m *Nested3A) XXX_Size() int {
   307  	return m.Size()
   308  }
   309  func (m *Nested3A) XXX_DiscardUnknown() {
   310  	xxx_messageInfo_Nested3A.DiscardUnknown(m)
   311  }
   312  
   313  var xxx_messageInfo_Nested3A proto.InternalMessageInfo
   314  
   315  func (m *Nested3A) GetId() int32 {
   316  	if m != nil {
   317  		return m.Id
   318  	}
   319  	return 0
   320  }
   321  
   322  func (m *Nested3A) GetName() string {
   323  	if m != nil {
   324  		return m.Name
   325  	}
   326  	return ""
   327  }
   328  
   329  func (m *Nested3A) GetA4() []*Nested4A {
   330  	if m != nil {
   331  		return m.A4
   332  	}
   333  	return nil
   334  }
   335  
   336  func (m *Nested3A) GetIndex() map[int64]*Nested4A {
   337  	if m != nil {
   338  		return m.Index
   339  	}
   340  	return nil
   341  }
   342  
   343  type Nested2A struct {
   344  	Id     int32     `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
   345  	Name   string    `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
   346  	Nested *Nested3A `protobuf:"bytes,3,opt,name=nested,proto3" json:"nested,omitempty"`
   347  }
   348  
   349  func (m *Nested2A) Reset()         { *m = Nested2A{} }
   350  func (m *Nested2A) String() string { return proto.CompactTextString(m) }
   351  func (*Nested2A) ProtoMessage()    {}
   352  func (*Nested2A) Descriptor() ([]byte, []int) {
   353  	return fileDescriptor_fe4560133be9209a, []int{4}
   354  }
   355  func (m *Nested2A) XXX_Unmarshal(b []byte) error {
   356  	return m.Unmarshal(b)
   357  }
   358  func (m *Nested2A) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   359  	if deterministic {
   360  		return xxx_messageInfo_Nested2A.Marshal(b, m, deterministic)
   361  	} else {
   362  		b = b[:cap(b)]
   363  		n, err := m.MarshalToSizedBuffer(b)
   364  		if err != nil {
   365  			return nil, err
   366  		}
   367  		return b[:n], nil
   368  	}
   369  }
   370  func (m *Nested2A) XXX_Merge(src proto.Message) {
   371  	xxx_messageInfo_Nested2A.Merge(m, src)
   372  }
   373  func (m *Nested2A) XXX_Size() int {
   374  	return m.Size()
   375  }
   376  func (m *Nested2A) XXX_DiscardUnknown() {
   377  	xxx_messageInfo_Nested2A.DiscardUnknown(m)
   378  }
   379  
   380  var xxx_messageInfo_Nested2A proto.InternalMessageInfo
   381  
   382  func (m *Nested2A) GetId() int32 {
   383  	if m != nil {
   384  		return m.Id
   385  	}
   386  	return 0
   387  }
   388  
   389  func (m *Nested2A) GetName() string {
   390  	if m != nil {
   391  		return m.Name
   392  	}
   393  	return ""
   394  }
   395  
   396  func (m *Nested2A) GetNested() *Nested3A {
   397  	if m != nil {
   398  		return m.Nested
   399  	}
   400  	return nil
   401  }
   402  
   403  type Nested1A struct {
   404  	Id     int32     `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
   405  	Nested *Nested2A `protobuf:"bytes,2,opt,name=nested,proto3" json:"nested,omitempty"`
   406  }
   407  
   408  func (m *Nested1A) Reset()         { *m = Nested1A{} }
   409  func (m *Nested1A) String() string { return proto.CompactTextString(m) }
   410  func (*Nested1A) ProtoMessage()    {}
   411  func (*Nested1A) Descriptor() ([]byte, []int) {
   412  	return fileDescriptor_fe4560133be9209a, []int{5}
   413  }
   414  func (m *Nested1A) XXX_Unmarshal(b []byte) error {
   415  	return m.Unmarshal(b)
   416  }
   417  func (m *Nested1A) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   418  	if deterministic {
   419  		return xxx_messageInfo_Nested1A.Marshal(b, m, deterministic)
   420  	} else {
   421  		b = b[:cap(b)]
   422  		n, err := m.MarshalToSizedBuffer(b)
   423  		if err != nil {
   424  			return nil, err
   425  		}
   426  		return b[:n], nil
   427  	}
   428  }
   429  func (m *Nested1A) XXX_Merge(src proto.Message) {
   430  	xxx_messageInfo_Nested1A.Merge(m, src)
   431  }
   432  func (m *Nested1A) XXX_Size() int {
   433  	return m.Size()
   434  }
   435  func (m *Nested1A) XXX_DiscardUnknown() {
   436  	xxx_messageInfo_Nested1A.DiscardUnknown(m)
   437  }
   438  
   439  var xxx_messageInfo_Nested1A proto.InternalMessageInfo
   440  
   441  func (m *Nested1A) GetId() int32 {
   442  	if m != nil {
   443  		return m.Id
   444  	}
   445  	return 0
   446  }
   447  
   448  func (m *Nested1A) GetNested() *Nested2A {
   449  	if m != nil {
   450  		return m.Nested
   451  	}
   452  	return nil
   453  }
   454  
   455  type Nested4B struct {
   456  	Id   int32  `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
   457  	Age  int32  `protobuf:"varint,2,opt,name=age,proto3" json:"age,omitempty"`
   458  	Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
   459  }
   460  
   461  func (m *Nested4B) Reset()         { *m = Nested4B{} }
   462  func (m *Nested4B) String() string { return proto.CompactTextString(m) }
   463  func (*Nested4B) ProtoMessage()    {}
   464  func (*Nested4B) Descriptor() ([]byte, []int) {
   465  	return fileDescriptor_fe4560133be9209a, []int{6}
   466  }
   467  func (m *Nested4B) XXX_Unmarshal(b []byte) error {
   468  	return m.Unmarshal(b)
   469  }
   470  func (m *Nested4B) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   471  	if deterministic {
   472  		return xxx_messageInfo_Nested4B.Marshal(b, m, deterministic)
   473  	} else {
   474  		b = b[:cap(b)]
   475  		n, err := m.MarshalToSizedBuffer(b)
   476  		if err != nil {
   477  			return nil, err
   478  		}
   479  		return b[:n], nil
   480  	}
   481  }
   482  func (m *Nested4B) XXX_Merge(src proto.Message) {
   483  	xxx_messageInfo_Nested4B.Merge(m, src)
   484  }
   485  func (m *Nested4B) XXX_Size() int {
   486  	return m.Size()
   487  }
   488  func (m *Nested4B) XXX_DiscardUnknown() {
   489  	xxx_messageInfo_Nested4B.DiscardUnknown(m)
   490  }
   491  
   492  var xxx_messageInfo_Nested4B proto.InternalMessageInfo
   493  
   494  func (m *Nested4B) GetId() int32 {
   495  	if m != nil {
   496  		return m.Id
   497  	}
   498  	return 0
   499  }
   500  
   501  func (m *Nested4B) GetAge() int32 {
   502  	if m != nil {
   503  		return m.Age
   504  	}
   505  	return 0
   506  }
   507  
   508  func (m *Nested4B) GetName() string {
   509  	if m != nil {
   510  		return m.Name
   511  	}
   512  	return ""
   513  }
   514  
   515  type Nested3B struct {
   516  	Id   int32       `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
   517  	Age  int32       `protobuf:"varint,2,opt,name=age,proto3" json:"age,omitempty"`
   518  	Name string      `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
   519  	B4   []*Nested4B `protobuf:"bytes,4,rep,name=b4,proto3" json:"b4,omitempty"`
   520  }
   521  
   522  func (m *Nested3B) Reset()         { *m = Nested3B{} }
   523  func (m *Nested3B) String() string { return proto.CompactTextString(m) }
   524  func (*Nested3B) ProtoMessage()    {}
   525  func (*Nested3B) Descriptor() ([]byte, []int) {
   526  	return fileDescriptor_fe4560133be9209a, []int{7}
   527  }
   528  func (m *Nested3B) XXX_Unmarshal(b []byte) error {
   529  	return m.Unmarshal(b)
   530  }
   531  func (m *Nested3B) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   532  	if deterministic {
   533  		return xxx_messageInfo_Nested3B.Marshal(b, m, deterministic)
   534  	} else {
   535  		b = b[:cap(b)]
   536  		n, err := m.MarshalToSizedBuffer(b)
   537  		if err != nil {
   538  			return nil, err
   539  		}
   540  		return b[:n], nil
   541  	}
   542  }
   543  func (m *Nested3B) XXX_Merge(src proto.Message) {
   544  	xxx_messageInfo_Nested3B.Merge(m, src)
   545  }
   546  func (m *Nested3B) XXX_Size() int {
   547  	return m.Size()
   548  }
   549  func (m *Nested3B) XXX_DiscardUnknown() {
   550  	xxx_messageInfo_Nested3B.DiscardUnknown(m)
   551  }
   552  
   553  var xxx_messageInfo_Nested3B proto.InternalMessageInfo
   554  
   555  func (m *Nested3B) GetId() int32 {
   556  	if m != nil {
   557  		return m.Id
   558  	}
   559  	return 0
   560  }
   561  
   562  func (m *Nested3B) GetAge() int32 {
   563  	if m != nil {
   564  		return m.Age
   565  	}
   566  	return 0
   567  }
   568  
   569  func (m *Nested3B) GetName() string {
   570  	if m != nil {
   571  		return m.Name
   572  	}
   573  	return ""
   574  }
   575  
   576  func (m *Nested3B) GetB4() []*Nested4B {
   577  	if m != nil {
   578  		return m.B4
   579  	}
   580  	return nil
   581  }
   582  
   583  type Nested2B struct {
   584  	Id     int32     `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
   585  	Fee    float64   `protobuf:"fixed64,2,opt,name=fee,proto3" json:"fee,omitempty"`
   586  	Nested *Nested3B `protobuf:"bytes,3,opt,name=nested,proto3" json:"nested,omitempty"`
   587  	Route  string    `protobuf:"bytes,4,opt,name=route,proto3" json:"route,omitempty"`
   588  }
   589  
   590  func (m *Nested2B) Reset()         { *m = Nested2B{} }
   591  func (m *Nested2B) String() string { return proto.CompactTextString(m) }
   592  func (*Nested2B) ProtoMessage()    {}
   593  func (*Nested2B) Descriptor() ([]byte, []int) {
   594  	return fileDescriptor_fe4560133be9209a, []int{8}
   595  }
   596  func (m *Nested2B) XXX_Unmarshal(b []byte) error {
   597  	return m.Unmarshal(b)
   598  }
   599  func (m *Nested2B) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   600  	if deterministic {
   601  		return xxx_messageInfo_Nested2B.Marshal(b, m, deterministic)
   602  	} else {
   603  		b = b[:cap(b)]
   604  		n, err := m.MarshalToSizedBuffer(b)
   605  		if err != nil {
   606  			return nil, err
   607  		}
   608  		return b[:n], nil
   609  	}
   610  }
   611  func (m *Nested2B) XXX_Merge(src proto.Message) {
   612  	xxx_messageInfo_Nested2B.Merge(m, src)
   613  }
   614  func (m *Nested2B) XXX_Size() int {
   615  	return m.Size()
   616  }
   617  func (m *Nested2B) XXX_DiscardUnknown() {
   618  	xxx_messageInfo_Nested2B.DiscardUnknown(m)
   619  }
   620  
   621  var xxx_messageInfo_Nested2B proto.InternalMessageInfo
   622  
   623  func (m *Nested2B) GetId() int32 {
   624  	if m != nil {
   625  		return m.Id
   626  	}
   627  	return 0
   628  }
   629  
   630  func (m *Nested2B) GetFee() float64 {
   631  	if m != nil {
   632  		return m.Fee
   633  	}
   634  	return 0
   635  }
   636  
   637  func (m *Nested2B) GetNested() *Nested3B {
   638  	if m != nil {
   639  		return m.Nested
   640  	}
   641  	return nil
   642  }
   643  
   644  func (m *Nested2B) GetRoute() string {
   645  	if m != nil {
   646  		return m.Route
   647  	}
   648  	return ""
   649  }
   650  
   651  type Nested1B struct {
   652  	Id     int32     `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
   653  	Nested *Nested2B `protobuf:"bytes,2,opt,name=nested,proto3" json:"nested,omitempty"`
   654  	Age    int32     `protobuf:"varint,3,opt,name=age,proto3" json:"age,omitempty"`
   655  }
   656  
   657  func (m *Nested1B) Reset()         { *m = Nested1B{} }
   658  func (m *Nested1B) String() string { return proto.CompactTextString(m) }
   659  func (*Nested1B) ProtoMessage()    {}
   660  func (*Nested1B) Descriptor() ([]byte, []int) {
   661  	return fileDescriptor_fe4560133be9209a, []int{9}
   662  }
   663  func (m *Nested1B) XXX_Unmarshal(b []byte) error {
   664  	return m.Unmarshal(b)
   665  }
   666  func (m *Nested1B) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   667  	if deterministic {
   668  		return xxx_messageInfo_Nested1B.Marshal(b, m, deterministic)
   669  	} else {
   670  		b = b[:cap(b)]
   671  		n, err := m.MarshalToSizedBuffer(b)
   672  		if err != nil {
   673  			return nil, err
   674  		}
   675  		return b[:n], nil
   676  	}
   677  }
   678  func (m *Nested1B) XXX_Merge(src proto.Message) {
   679  	xxx_messageInfo_Nested1B.Merge(m, src)
   680  }
   681  func (m *Nested1B) XXX_Size() int {
   682  	return m.Size()
   683  }
   684  func (m *Nested1B) XXX_DiscardUnknown() {
   685  	xxx_messageInfo_Nested1B.DiscardUnknown(m)
   686  }
   687  
   688  var xxx_messageInfo_Nested1B proto.InternalMessageInfo
   689  
   690  func (m *Nested1B) GetId() int32 {
   691  	if m != nil {
   692  		return m.Id
   693  	}
   694  	return 0
   695  }
   696  
   697  func (m *Nested1B) GetNested() *Nested2B {
   698  	if m != nil {
   699  		return m.Nested
   700  	}
   701  	return nil
   702  }
   703  
   704  func (m *Nested1B) GetAge() int32 {
   705  	if m != nil {
   706  		return m.Age
   707  	}
   708  	return 0
   709  }
   710  
   711  type Customer3 struct {
   712  	Id          int32   `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
   713  	Name        string  `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
   714  	Sf          float32 `protobuf:"fixed32,3,opt,name=sf,proto3" json:"sf,omitempty"`
   715  	Surcharge   float32 `protobuf:"fixed32,4,opt,name=surcharge,proto3" json:"surcharge,omitempty"`
   716  	Destination string  `protobuf:"bytes,5,opt,name=destination,proto3" json:"destination,omitempty"`
   717  	// Types that are valid to be assigned to Payment:
   718  	//
   719  	//	*Customer3_CreditCardNo
   720  	//	*Customer3_ChequeNo
   721  	Payment  isCustomer3_Payment `protobuf_oneof:"payment"`
   722  	Original *Customer1          `protobuf:"bytes,9,opt,name=original,proto3" json:"original,omitempty"`
   723  }
   724  
   725  func (m *Customer3) Reset()         { *m = Customer3{} }
   726  func (m *Customer3) String() string { return proto.CompactTextString(m) }
   727  func (*Customer3) ProtoMessage()    {}
   728  func (*Customer3) Descriptor() ([]byte, []int) {
   729  	return fileDescriptor_fe4560133be9209a, []int{10}
   730  }
   731  func (m *Customer3) XXX_Unmarshal(b []byte) error {
   732  	return m.Unmarshal(b)
   733  }
   734  func (m *Customer3) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   735  	if deterministic {
   736  		return xxx_messageInfo_Customer3.Marshal(b, m, deterministic)
   737  	} else {
   738  		b = b[:cap(b)]
   739  		n, err := m.MarshalToSizedBuffer(b)
   740  		if err != nil {
   741  			return nil, err
   742  		}
   743  		return b[:n], nil
   744  	}
   745  }
   746  func (m *Customer3) XXX_Merge(src proto.Message) {
   747  	xxx_messageInfo_Customer3.Merge(m, src)
   748  }
   749  func (m *Customer3) XXX_Size() int {
   750  	return m.Size()
   751  }
   752  func (m *Customer3) XXX_DiscardUnknown() {
   753  	xxx_messageInfo_Customer3.DiscardUnknown(m)
   754  }
   755  
   756  var xxx_messageInfo_Customer3 proto.InternalMessageInfo
   757  
   758  type isCustomer3_Payment interface {
   759  	isCustomer3_Payment()
   760  	MarshalTo([]byte) (int, error)
   761  	Size() int
   762  }
   763  
   764  type Customer3_CreditCardNo struct {
   765  	CreditCardNo string `protobuf:"bytes,7,opt,name=credit_card_no,json=creditCardNo,proto3,oneof" json:"credit_card_no,omitempty"`
   766  }
   767  type Customer3_ChequeNo struct {
   768  	ChequeNo string `protobuf:"bytes,8,opt,name=cheque_no,json=chequeNo,proto3,oneof" json:"cheque_no,omitempty"`
   769  }
   770  
   771  func (*Customer3_CreditCardNo) isCustomer3_Payment() {}
   772  func (*Customer3_ChequeNo) isCustomer3_Payment()     {}
   773  
   774  func (m *Customer3) GetPayment() isCustomer3_Payment {
   775  	if m != nil {
   776  		return m.Payment
   777  	}
   778  	return nil
   779  }
   780  
   781  func (m *Customer3) GetId() int32 {
   782  	if m != nil {
   783  		return m.Id
   784  	}
   785  	return 0
   786  }
   787  
   788  func (m *Customer3) GetName() string {
   789  	if m != nil {
   790  		return m.Name
   791  	}
   792  	return ""
   793  }
   794  
   795  func (m *Customer3) GetSf() float32 {
   796  	if m != nil {
   797  		return m.Sf
   798  	}
   799  	return 0
   800  }
   801  
   802  func (m *Customer3) GetSurcharge() float32 {
   803  	if m != nil {
   804  		return m.Surcharge
   805  	}
   806  	return 0
   807  }
   808  
   809  func (m *Customer3) GetDestination() string {
   810  	if m != nil {
   811  		return m.Destination
   812  	}
   813  	return ""
   814  }
   815  
   816  func (m *Customer3) GetCreditCardNo() string {
   817  	if x, ok := m.GetPayment().(*Customer3_CreditCardNo); ok {
   818  		return x.CreditCardNo
   819  	}
   820  	return ""
   821  }
   822  
   823  func (m *Customer3) GetChequeNo() string {
   824  	if x, ok := m.GetPayment().(*Customer3_ChequeNo); ok {
   825  		return x.ChequeNo
   826  	}
   827  	return ""
   828  }
   829  
   830  func (m *Customer3) GetOriginal() *Customer1 {
   831  	if m != nil {
   832  		return m.Original
   833  	}
   834  	return nil
   835  }
   836  
   837  // XXX_OneofWrappers is for the internal use of the proto package.
   838  func (*Customer3) XXX_OneofWrappers() []interface{} {
   839  	return []interface{}{
   840  		(*Customer3_CreditCardNo)(nil),
   841  		(*Customer3_ChequeNo)(nil),
   842  	}
   843  }
   844  
   845  type TestVersion1 struct {
   846  	X int64           `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"`
   847  	A *TestVersion1   `protobuf:"bytes,2,opt,name=a,proto3" json:"a,omitempty"`
   848  	B *TestVersion1   `protobuf:"bytes,3,opt,name=b,proto3" json:"b,omitempty"`
   849  	C []*TestVersion1 `protobuf:"bytes,4,rep,name=c,proto3" json:"c,omitempty"`
   850  	D []TestVersion1  `protobuf:"bytes,5,rep,name=d,proto3" json:"d"`
   851  	// Types that are valid to be assigned to Sum:
   852  	//
   853  	//	*TestVersion1_E
   854  	//	*TestVersion1_F
   855  	Sum isTestVersion1_Sum `protobuf_oneof:"sum"`
   856  	G   *types.Any         `protobuf:"bytes,8,opt,name=g,proto3" json:"g,omitempty"`
   857  	H   []*TestVersion1    `protobuf:"bytes,9,rep,name=h,proto3" json:"h,omitempty"`
   858  	// google.protobuf.Timestamp i = 10;
   859  	// google.protobuf.Timestamp j = 11; // [(gogoproto.stdtime) = true];
   860  	*Customer1 `protobuf:"bytes,12,opt,name=k,proto3,embedded=k" json:"k,omitempty"`
   861  }
   862  
   863  func (m *TestVersion1) Reset()         { *m = TestVersion1{} }
   864  func (m *TestVersion1) String() string { return proto.CompactTextString(m) }
   865  func (*TestVersion1) ProtoMessage()    {}
   866  func (*TestVersion1) Descriptor() ([]byte, []int) {
   867  	return fileDescriptor_fe4560133be9209a, []int{11}
   868  }
   869  func (m *TestVersion1) XXX_Unmarshal(b []byte) error {
   870  	return m.Unmarshal(b)
   871  }
   872  func (m *TestVersion1) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   873  	if deterministic {
   874  		return xxx_messageInfo_TestVersion1.Marshal(b, m, deterministic)
   875  	} else {
   876  		b = b[:cap(b)]
   877  		n, err := m.MarshalToSizedBuffer(b)
   878  		if err != nil {
   879  			return nil, err
   880  		}
   881  		return b[:n], nil
   882  	}
   883  }
   884  func (m *TestVersion1) XXX_Merge(src proto.Message) {
   885  	xxx_messageInfo_TestVersion1.Merge(m, src)
   886  }
   887  func (m *TestVersion1) XXX_Size() int {
   888  	return m.Size()
   889  }
   890  func (m *TestVersion1) XXX_DiscardUnknown() {
   891  	xxx_messageInfo_TestVersion1.DiscardUnknown(m)
   892  }
   893  
   894  var xxx_messageInfo_TestVersion1 proto.InternalMessageInfo
   895  
   896  type isTestVersion1_Sum interface {
   897  	isTestVersion1_Sum()
   898  	MarshalTo([]byte) (int, error)
   899  	Size() int
   900  }
   901  
   902  type TestVersion1_E struct {
   903  	E int32 `protobuf:"varint,6,opt,name=e,proto3,oneof" json:"e,omitempty"`
   904  }
   905  type TestVersion1_F struct {
   906  	F *TestVersion1 `protobuf:"bytes,7,opt,name=f,proto3,oneof" json:"f,omitempty"`
   907  }
   908  
   909  func (*TestVersion1_E) isTestVersion1_Sum() {}
   910  func (*TestVersion1_F) isTestVersion1_Sum() {}
   911  
   912  func (m *TestVersion1) GetSum() isTestVersion1_Sum {
   913  	if m != nil {
   914  		return m.Sum
   915  	}
   916  	return nil
   917  }
   918  
   919  func (m *TestVersion1) GetX() int64 {
   920  	if m != nil {
   921  		return m.X
   922  	}
   923  	return 0
   924  }
   925  
   926  func (m *TestVersion1) GetA() *TestVersion1 {
   927  	if m != nil {
   928  		return m.A
   929  	}
   930  	return nil
   931  }
   932  
   933  func (m *TestVersion1) GetB() *TestVersion1 {
   934  	if m != nil {
   935  		return m.B
   936  	}
   937  	return nil
   938  }
   939  
   940  func (m *TestVersion1) GetC() []*TestVersion1 {
   941  	if m != nil {
   942  		return m.C
   943  	}
   944  	return nil
   945  }
   946  
   947  func (m *TestVersion1) GetD() []TestVersion1 {
   948  	if m != nil {
   949  		return m.D
   950  	}
   951  	return nil
   952  }
   953  
   954  func (m *TestVersion1) GetE() int32 {
   955  	if x, ok := m.GetSum().(*TestVersion1_E); ok {
   956  		return x.E
   957  	}
   958  	return 0
   959  }
   960  
   961  func (m *TestVersion1) GetF() *TestVersion1 {
   962  	if x, ok := m.GetSum().(*TestVersion1_F); ok {
   963  		return x.F
   964  	}
   965  	return nil
   966  }
   967  
   968  func (m *TestVersion1) GetG() *types.Any {
   969  	if m != nil {
   970  		return m.G
   971  	}
   972  	return nil
   973  }
   974  
   975  func (m *TestVersion1) GetH() []*TestVersion1 {
   976  	if m != nil {
   977  		return m.H
   978  	}
   979  	return nil
   980  }
   981  
   982  // XXX_OneofWrappers is for the internal use of the proto package.
   983  func (*TestVersion1) XXX_OneofWrappers() []interface{} {
   984  	return []interface{}{
   985  		(*TestVersion1_E)(nil),
   986  		(*TestVersion1_F)(nil),
   987  	}
   988  }
   989  
   990  type TestVersion2 struct {
   991  	X int64           `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"`
   992  	A *TestVersion2   `protobuf:"bytes,2,opt,name=a,proto3" json:"a,omitempty"`
   993  	B *TestVersion2   `protobuf:"bytes,3,opt,name=b,proto3" json:"b,omitempty"`
   994  	C []*TestVersion2 `protobuf:"bytes,4,rep,name=c,proto3" json:"c,omitempty"`
   995  	D []*TestVersion2 `protobuf:"bytes,5,rep,name=d,proto3" json:"d,omitempty"`
   996  	// Types that are valid to be assigned to Sum:
   997  	//
   998  	//	*TestVersion2_E
   999  	//	*TestVersion2_F
  1000  	Sum isTestVersion2_Sum `protobuf_oneof:"sum"`
  1001  	G   *types.Any         `protobuf:"bytes,8,opt,name=g,proto3" json:"g,omitempty"`
  1002  	H   []*TestVersion1    `protobuf:"bytes,9,rep,name=h,proto3" json:"h,omitempty"`
  1003  	// google.protobuf.Timestamp i = 10;
  1004  	// google.protobuf.Timestamp j = 11; // [(gogoproto.stdtime) = true];
  1005  	*Customer1 `protobuf:"bytes,12,opt,name=k,proto3,embedded=k" json:"k,omitempty"`
  1006  	NewField   uint64 `protobuf:"varint,25,opt,name=new_field,json=newField,proto3" json:"new_field,omitempty"`
  1007  }
  1008  
  1009  func (m *TestVersion2) Reset()         { *m = TestVersion2{} }
  1010  func (m *TestVersion2) String() string { return proto.CompactTextString(m) }
  1011  func (*TestVersion2) ProtoMessage()    {}
  1012  func (*TestVersion2) Descriptor() ([]byte, []int) {
  1013  	return fileDescriptor_fe4560133be9209a, []int{12}
  1014  }
  1015  func (m *TestVersion2) XXX_Unmarshal(b []byte) error {
  1016  	return m.Unmarshal(b)
  1017  }
  1018  func (m *TestVersion2) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1019  	if deterministic {
  1020  		return xxx_messageInfo_TestVersion2.Marshal(b, m, deterministic)
  1021  	} else {
  1022  		b = b[:cap(b)]
  1023  		n, err := m.MarshalToSizedBuffer(b)
  1024  		if err != nil {
  1025  			return nil, err
  1026  		}
  1027  		return b[:n], nil
  1028  	}
  1029  }
  1030  func (m *TestVersion2) XXX_Merge(src proto.Message) {
  1031  	xxx_messageInfo_TestVersion2.Merge(m, src)
  1032  }
  1033  func (m *TestVersion2) XXX_Size() int {
  1034  	return m.Size()
  1035  }
  1036  func (m *TestVersion2) XXX_DiscardUnknown() {
  1037  	xxx_messageInfo_TestVersion2.DiscardUnknown(m)
  1038  }
  1039  
  1040  var xxx_messageInfo_TestVersion2 proto.InternalMessageInfo
  1041  
  1042  type isTestVersion2_Sum interface {
  1043  	isTestVersion2_Sum()
  1044  	MarshalTo([]byte) (int, error)
  1045  	Size() int
  1046  }
  1047  
  1048  type TestVersion2_E struct {
  1049  	E int32 `protobuf:"varint,6,opt,name=e,proto3,oneof" json:"e,omitempty"`
  1050  }
  1051  type TestVersion2_F struct {
  1052  	F *TestVersion2 `protobuf:"bytes,7,opt,name=f,proto3,oneof" json:"f,omitempty"`
  1053  }
  1054  
  1055  func (*TestVersion2_E) isTestVersion2_Sum() {}
  1056  func (*TestVersion2_F) isTestVersion2_Sum() {}
  1057  
  1058  func (m *TestVersion2) GetSum() isTestVersion2_Sum {
  1059  	if m != nil {
  1060  		return m.Sum
  1061  	}
  1062  	return nil
  1063  }
  1064  
  1065  func (m *TestVersion2) GetX() int64 {
  1066  	if m != nil {
  1067  		return m.X
  1068  	}
  1069  	return 0
  1070  }
  1071  
  1072  func (m *TestVersion2) GetA() *TestVersion2 {
  1073  	if m != nil {
  1074  		return m.A
  1075  	}
  1076  	return nil
  1077  }
  1078  
  1079  func (m *TestVersion2) GetB() *TestVersion2 {
  1080  	if m != nil {
  1081  		return m.B
  1082  	}
  1083  	return nil
  1084  }
  1085  
  1086  func (m *TestVersion2) GetC() []*TestVersion2 {
  1087  	if m != nil {
  1088  		return m.C
  1089  	}
  1090  	return nil
  1091  }
  1092  
  1093  func (m *TestVersion2) GetD() []*TestVersion2 {
  1094  	if m != nil {
  1095  		return m.D
  1096  	}
  1097  	return nil
  1098  }
  1099  
  1100  func (m *TestVersion2) GetE() int32 {
  1101  	if x, ok := m.GetSum().(*TestVersion2_E); ok {
  1102  		return x.E
  1103  	}
  1104  	return 0
  1105  }
  1106  
  1107  func (m *TestVersion2) GetF() *TestVersion2 {
  1108  	if x, ok := m.GetSum().(*TestVersion2_F); ok {
  1109  		return x.F
  1110  	}
  1111  	return nil
  1112  }
  1113  
  1114  func (m *TestVersion2) GetG() *types.Any {
  1115  	if m != nil {
  1116  		return m.G
  1117  	}
  1118  	return nil
  1119  }
  1120  
  1121  func (m *TestVersion2) GetH() []*TestVersion1 {
  1122  	if m != nil {
  1123  		return m.H
  1124  	}
  1125  	return nil
  1126  }
  1127  
  1128  func (m *TestVersion2) GetNewField() uint64 {
  1129  	if m != nil {
  1130  		return m.NewField
  1131  	}
  1132  	return 0
  1133  }
  1134  
  1135  // XXX_OneofWrappers is for the internal use of the proto package.
  1136  func (*TestVersion2) XXX_OneofWrappers() []interface{} {
  1137  	return []interface{}{
  1138  		(*TestVersion2_E)(nil),
  1139  		(*TestVersion2_F)(nil),
  1140  	}
  1141  }
  1142  
  1143  type TestVersion3 struct {
  1144  	X int64           `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"`
  1145  	A *TestVersion3   `protobuf:"bytes,2,opt,name=a,proto3" json:"a,omitempty"`
  1146  	B *TestVersion3   `protobuf:"bytes,3,opt,name=b,proto3" json:"b,omitempty"`
  1147  	C []*TestVersion3 `protobuf:"bytes,4,rep,name=c,proto3" json:"c,omitempty"`
  1148  	D []*TestVersion3 `protobuf:"bytes,5,rep,name=d,proto3" json:"d,omitempty"`
  1149  	// Types that are valid to be assigned to Sum:
  1150  	//
  1151  	//	*TestVersion3_E
  1152  	//	*TestVersion3_F
  1153  	Sum isTestVersion3_Sum `protobuf_oneof:"sum"`
  1154  	G   *types.Any         `protobuf:"bytes,8,opt,name=g,proto3" json:"g,omitempty"`
  1155  	H   []*TestVersion1    `protobuf:"bytes,9,rep,name=h,proto3" json:"h,omitempty"`
  1156  	// google.protobuf.Timestamp i = 10;
  1157  	// google.protobuf.Timestamp j = 11; // [(gogoproto.stdtime) = true];
  1158  	*Customer1       `protobuf:"bytes,12,opt,name=k,proto3,embedded=k" json:"k,omitempty"`
  1159  	NonCriticalField string `protobuf:"bytes,1031,opt,name=non_critical_field,json=nonCriticalField,proto3" json:"non_critical_field,omitempty"`
  1160  }
  1161  
  1162  func (m *TestVersion3) Reset()         { *m = TestVersion3{} }
  1163  func (m *TestVersion3) String() string { return proto.CompactTextString(m) }
  1164  func (*TestVersion3) ProtoMessage()    {}
  1165  func (*TestVersion3) Descriptor() ([]byte, []int) {
  1166  	return fileDescriptor_fe4560133be9209a, []int{13}
  1167  }
  1168  func (m *TestVersion3) XXX_Unmarshal(b []byte) error {
  1169  	return m.Unmarshal(b)
  1170  }
  1171  func (m *TestVersion3) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1172  	if deterministic {
  1173  		return xxx_messageInfo_TestVersion3.Marshal(b, m, deterministic)
  1174  	} else {
  1175  		b = b[:cap(b)]
  1176  		n, err := m.MarshalToSizedBuffer(b)
  1177  		if err != nil {
  1178  			return nil, err
  1179  		}
  1180  		return b[:n], nil
  1181  	}
  1182  }
  1183  func (m *TestVersion3) XXX_Merge(src proto.Message) {
  1184  	xxx_messageInfo_TestVersion3.Merge(m, src)
  1185  }
  1186  func (m *TestVersion3) XXX_Size() int {
  1187  	return m.Size()
  1188  }
  1189  func (m *TestVersion3) XXX_DiscardUnknown() {
  1190  	xxx_messageInfo_TestVersion3.DiscardUnknown(m)
  1191  }
  1192  
  1193  var xxx_messageInfo_TestVersion3 proto.InternalMessageInfo
  1194  
  1195  type isTestVersion3_Sum interface {
  1196  	isTestVersion3_Sum()
  1197  	MarshalTo([]byte) (int, error)
  1198  	Size() int
  1199  }
  1200  
  1201  type TestVersion3_E struct {
  1202  	E int32 `protobuf:"varint,6,opt,name=e,proto3,oneof" json:"e,omitempty"`
  1203  }
  1204  type TestVersion3_F struct {
  1205  	F *TestVersion3 `protobuf:"bytes,7,opt,name=f,proto3,oneof" json:"f,omitempty"`
  1206  }
  1207  
  1208  func (*TestVersion3_E) isTestVersion3_Sum() {}
  1209  func (*TestVersion3_F) isTestVersion3_Sum() {}
  1210  
  1211  func (m *TestVersion3) GetSum() isTestVersion3_Sum {
  1212  	if m != nil {
  1213  		return m.Sum
  1214  	}
  1215  	return nil
  1216  }
  1217  
  1218  func (m *TestVersion3) GetX() int64 {
  1219  	if m != nil {
  1220  		return m.X
  1221  	}
  1222  	return 0
  1223  }
  1224  
  1225  func (m *TestVersion3) GetA() *TestVersion3 {
  1226  	if m != nil {
  1227  		return m.A
  1228  	}
  1229  	return nil
  1230  }
  1231  
  1232  func (m *TestVersion3) GetB() *TestVersion3 {
  1233  	if m != nil {
  1234  		return m.B
  1235  	}
  1236  	return nil
  1237  }
  1238  
  1239  func (m *TestVersion3) GetC() []*TestVersion3 {
  1240  	if m != nil {
  1241  		return m.C
  1242  	}
  1243  	return nil
  1244  }
  1245  
  1246  func (m *TestVersion3) GetD() []*TestVersion3 {
  1247  	if m != nil {
  1248  		return m.D
  1249  	}
  1250  	return nil
  1251  }
  1252  
  1253  func (m *TestVersion3) GetE() int32 {
  1254  	if x, ok := m.GetSum().(*TestVersion3_E); ok {
  1255  		return x.E
  1256  	}
  1257  	return 0
  1258  }
  1259  
  1260  func (m *TestVersion3) GetF() *TestVersion3 {
  1261  	if x, ok := m.GetSum().(*TestVersion3_F); ok {
  1262  		return x.F
  1263  	}
  1264  	return nil
  1265  }
  1266  
  1267  func (m *TestVersion3) GetG() *types.Any {
  1268  	if m != nil {
  1269  		return m.G
  1270  	}
  1271  	return nil
  1272  }
  1273  
  1274  func (m *TestVersion3) GetH() []*TestVersion1 {
  1275  	if m != nil {
  1276  		return m.H
  1277  	}
  1278  	return nil
  1279  }
  1280  
  1281  func (m *TestVersion3) GetNonCriticalField() string {
  1282  	if m != nil {
  1283  		return m.NonCriticalField
  1284  	}
  1285  	return ""
  1286  }
  1287  
  1288  // XXX_OneofWrappers is for the internal use of the proto package.
  1289  func (*TestVersion3) XXX_OneofWrappers() []interface{} {
  1290  	return []interface{}{
  1291  		(*TestVersion3_E)(nil),
  1292  		(*TestVersion3_F)(nil),
  1293  	}
  1294  }
  1295  
  1296  type TestVersion3LoneOneOfValue struct {
  1297  	X int64           `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"`
  1298  	A *TestVersion3   `protobuf:"bytes,2,opt,name=a,proto3" json:"a,omitempty"`
  1299  	B *TestVersion3   `protobuf:"bytes,3,opt,name=b,proto3" json:"b,omitempty"`
  1300  	C []*TestVersion3 `protobuf:"bytes,4,rep,name=c,proto3" json:"c,omitempty"`
  1301  	D []*TestVersion3 `protobuf:"bytes,5,rep,name=d,proto3" json:"d,omitempty"`
  1302  	// Types that are valid to be assigned to Sum:
  1303  	//
  1304  	//	*TestVersion3LoneOneOfValue_E
  1305  	Sum isTestVersion3LoneOneOfValue_Sum `protobuf_oneof:"sum"`
  1306  	G   *types.Any                       `protobuf:"bytes,8,opt,name=g,proto3" json:"g,omitempty"`
  1307  	H   []*TestVersion1                  `protobuf:"bytes,9,rep,name=h,proto3" json:"h,omitempty"`
  1308  	// google.protobuf.Timestamp i = 10;
  1309  	// google.protobuf.Timestamp j = 11; // [(gogoproto.stdtime) = true];
  1310  	*Customer1       `protobuf:"bytes,12,opt,name=k,proto3,embedded=k" json:"k,omitempty"`
  1311  	NonCriticalField string `protobuf:"bytes,1031,opt,name=non_critical_field,json=nonCriticalField,proto3" json:"non_critical_field,omitempty"`
  1312  }
  1313  
  1314  func (m *TestVersion3LoneOneOfValue) Reset()         { *m = TestVersion3LoneOneOfValue{} }
  1315  func (m *TestVersion3LoneOneOfValue) String() string { return proto.CompactTextString(m) }
  1316  func (*TestVersion3LoneOneOfValue) ProtoMessage()    {}
  1317  func (*TestVersion3LoneOneOfValue) Descriptor() ([]byte, []int) {
  1318  	return fileDescriptor_fe4560133be9209a, []int{14}
  1319  }
  1320  func (m *TestVersion3LoneOneOfValue) XXX_Unmarshal(b []byte) error {
  1321  	return m.Unmarshal(b)
  1322  }
  1323  func (m *TestVersion3LoneOneOfValue) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1324  	if deterministic {
  1325  		return xxx_messageInfo_TestVersion3LoneOneOfValue.Marshal(b, m, deterministic)
  1326  	} else {
  1327  		b = b[:cap(b)]
  1328  		n, err := m.MarshalToSizedBuffer(b)
  1329  		if err != nil {
  1330  			return nil, err
  1331  		}
  1332  		return b[:n], nil
  1333  	}
  1334  }
  1335  func (m *TestVersion3LoneOneOfValue) XXX_Merge(src proto.Message) {
  1336  	xxx_messageInfo_TestVersion3LoneOneOfValue.Merge(m, src)
  1337  }
  1338  func (m *TestVersion3LoneOneOfValue) XXX_Size() int {
  1339  	return m.Size()
  1340  }
  1341  func (m *TestVersion3LoneOneOfValue) XXX_DiscardUnknown() {
  1342  	xxx_messageInfo_TestVersion3LoneOneOfValue.DiscardUnknown(m)
  1343  }
  1344  
  1345  var xxx_messageInfo_TestVersion3LoneOneOfValue proto.InternalMessageInfo
  1346  
  1347  type isTestVersion3LoneOneOfValue_Sum interface {
  1348  	isTestVersion3LoneOneOfValue_Sum()
  1349  	MarshalTo([]byte) (int, error)
  1350  	Size() int
  1351  }
  1352  
  1353  type TestVersion3LoneOneOfValue_E struct {
  1354  	E int32 `protobuf:"varint,6,opt,name=e,proto3,oneof" json:"e,omitempty"`
  1355  }
  1356  
  1357  func (*TestVersion3LoneOneOfValue_E) isTestVersion3LoneOneOfValue_Sum() {}
  1358  
  1359  func (m *TestVersion3LoneOneOfValue) GetSum() isTestVersion3LoneOneOfValue_Sum {
  1360  	if m != nil {
  1361  		return m.Sum
  1362  	}
  1363  	return nil
  1364  }
  1365  
  1366  func (m *TestVersion3LoneOneOfValue) GetX() int64 {
  1367  	if m != nil {
  1368  		return m.X
  1369  	}
  1370  	return 0
  1371  }
  1372  
  1373  func (m *TestVersion3LoneOneOfValue) GetA() *TestVersion3 {
  1374  	if m != nil {
  1375  		return m.A
  1376  	}
  1377  	return nil
  1378  }
  1379  
  1380  func (m *TestVersion3LoneOneOfValue) GetB() *TestVersion3 {
  1381  	if m != nil {
  1382  		return m.B
  1383  	}
  1384  	return nil
  1385  }
  1386  
  1387  func (m *TestVersion3LoneOneOfValue) GetC() []*TestVersion3 {
  1388  	if m != nil {
  1389  		return m.C
  1390  	}
  1391  	return nil
  1392  }
  1393  
  1394  func (m *TestVersion3LoneOneOfValue) GetD() []*TestVersion3 {
  1395  	if m != nil {
  1396  		return m.D
  1397  	}
  1398  	return nil
  1399  }
  1400  
  1401  func (m *TestVersion3LoneOneOfValue) GetE() int32 {
  1402  	if x, ok := m.GetSum().(*TestVersion3LoneOneOfValue_E); ok {
  1403  		return x.E
  1404  	}
  1405  	return 0
  1406  }
  1407  
  1408  func (m *TestVersion3LoneOneOfValue) GetG() *types.Any {
  1409  	if m != nil {
  1410  		return m.G
  1411  	}
  1412  	return nil
  1413  }
  1414  
  1415  func (m *TestVersion3LoneOneOfValue) GetH() []*TestVersion1 {
  1416  	if m != nil {
  1417  		return m.H
  1418  	}
  1419  	return nil
  1420  }
  1421  
  1422  func (m *TestVersion3LoneOneOfValue) GetNonCriticalField() string {
  1423  	if m != nil {
  1424  		return m.NonCriticalField
  1425  	}
  1426  	return ""
  1427  }
  1428  
  1429  // XXX_OneofWrappers is for the internal use of the proto package.
  1430  func (*TestVersion3LoneOneOfValue) XXX_OneofWrappers() []interface{} {
  1431  	return []interface{}{
  1432  		(*TestVersion3LoneOneOfValue_E)(nil),
  1433  	}
  1434  }
  1435  
  1436  type TestVersion3LoneNesting struct {
  1437  	X int64           `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"`
  1438  	A *TestVersion3   `protobuf:"bytes,2,opt,name=a,proto3" json:"a,omitempty"`
  1439  	B *TestVersion3   `protobuf:"bytes,3,opt,name=b,proto3" json:"b,omitempty"`
  1440  	C []*TestVersion3 `protobuf:"bytes,4,rep,name=c,proto3" json:"c,omitempty"`
  1441  	D []*TestVersion3 `protobuf:"bytes,5,rep,name=d,proto3" json:"d,omitempty"`
  1442  	// Types that are valid to be assigned to Sum:
  1443  	//
  1444  	//	*TestVersion3LoneNesting_F
  1445  	Sum isTestVersion3LoneNesting_Sum `protobuf_oneof:"sum"`
  1446  	G   *types.Any                    `protobuf:"bytes,8,opt,name=g,proto3" json:"g,omitempty"`
  1447  	H   []*TestVersion1               `protobuf:"bytes,9,rep,name=h,proto3" json:"h,omitempty"`
  1448  	// google.protobuf.Timestamp i = 10;
  1449  	// google.protobuf.Timestamp j = 11; // [(gogoproto.stdtime) = true];
  1450  	*Customer1       `protobuf:"bytes,12,opt,name=k,proto3,embedded=k" json:"k,omitempty"`
  1451  	NonCriticalField string                          `protobuf:"bytes,1031,opt,name=non_critical_field,json=nonCriticalField,proto3" json:"non_critical_field,omitempty"`
  1452  	Inner1           *TestVersion3LoneNesting_Inner1 `protobuf:"bytes,14,opt,name=inner1,proto3" json:"inner1,omitempty"`
  1453  	Inner2           *TestVersion3LoneNesting_Inner2 `protobuf:"bytes,15,opt,name=inner2,proto3" json:"inner2,omitempty"`
  1454  }
  1455  
  1456  func (m *TestVersion3LoneNesting) Reset()         { *m = TestVersion3LoneNesting{} }
  1457  func (m *TestVersion3LoneNesting) String() string { return proto.CompactTextString(m) }
  1458  func (*TestVersion3LoneNesting) ProtoMessage()    {}
  1459  func (*TestVersion3LoneNesting) Descriptor() ([]byte, []int) {
  1460  	return fileDescriptor_fe4560133be9209a, []int{15}
  1461  }
  1462  func (m *TestVersion3LoneNesting) XXX_Unmarshal(b []byte) error {
  1463  	return m.Unmarshal(b)
  1464  }
  1465  func (m *TestVersion3LoneNesting) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1466  	if deterministic {
  1467  		return xxx_messageInfo_TestVersion3LoneNesting.Marshal(b, m, deterministic)
  1468  	} else {
  1469  		b = b[:cap(b)]
  1470  		n, err := m.MarshalToSizedBuffer(b)
  1471  		if err != nil {
  1472  			return nil, err
  1473  		}
  1474  		return b[:n], nil
  1475  	}
  1476  }
  1477  func (m *TestVersion3LoneNesting) XXX_Merge(src proto.Message) {
  1478  	xxx_messageInfo_TestVersion3LoneNesting.Merge(m, src)
  1479  }
  1480  func (m *TestVersion3LoneNesting) XXX_Size() int {
  1481  	return m.Size()
  1482  }
  1483  func (m *TestVersion3LoneNesting) XXX_DiscardUnknown() {
  1484  	xxx_messageInfo_TestVersion3LoneNesting.DiscardUnknown(m)
  1485  }
  1486  
  1487  var xxx_messageInfo_TestVersion3LoneNesting proto.InternalMessageInfo
  1488  
  1489  type isTestVersion3LoneNesting_Sum interface {
  1490  	isTestVersion3LoneNesting_Sum()
  1491  	MarshalTo([]byte) (int, error)
  1492  	Size() int
  1493  }
  1494  
  1495  type TestVersion3LoneNesting_F struct {
  1496  	F *TestVersion3LoneNesting `protobuf:"bytes,7,opt,name=f,proto3,oneof" json:"f,omitempty"`
  1497  }
  1498  
  1499  func (*TestVersion3LoneNesting_F) isTestVersion3LoneNesting_Sum() {}
  1500  
  1501  func (m *TestVersion3LoneNesting) GetSum() isTestVersion3LoneNesting_Sum {
  1502  	if m != nil {
  1503  		return m.Sum
  1504  	}
  1505  	return nil
  1506  }
  1507  
  1508  func (m *TestVersion3LoneNesting) GetX() int64 {
  1509  	if m != nil {
  1510  		return m.X
  1511  	}
  1512  	return 0
  1513  }
  1514  
  1515  func (m *TestVersion3LoneNesting) GetA() *TestVersion3 {
  1516  	if m != nil {
  1517  		return m.A
  1518  	}
  1519  	return nil
  1520  }
  1521  
  1522  func (m *TestVersion3LoneNesting) GetB() *TestVersion3 {
  1523  	if m != nil {
  1524  		return m.B
  1525  	}
  1526  	return nil
  1527  }
  1528  
  1529  func (m *TestVersion3LoneNesting) GetC() []*TestVersion3 {
  1530  	if m != nil {
  1531  		return m.C
  1532  	}
  1533  	return nil
  1534  }
  1535  
  1536  func (m *TestVersion3LoneNesting) GetD() []*TestVersion3 {
  1537  	if m != nil {
  1538  		return m.D
  1539  	}
  1540  	return nil
  1541  }
  1542  
  1543  func (m *TestVersion3LoneNesting) GetF() *TestVersion3LoneNesting {
  1544  	if x, ok := m.GetSum().(*TestVersion3LoneNesting_F); ok {
  1545  		return x.F
  1546  	}
  1547  	return nil
  1548  }
  1549  
  1550  func (m *TestVersion3LoneNesting) GetG() *types.Any {
  1551  	if m != nil {
  1552  		return m.G
  1553  	}
  1554  	return nil
  1555  }
  1556  
  1557  func (m *TestVersion3LoneNesting) GetH() []*TestVersion1 {
  1558  	if m != nil {
  1559  		return m.H
  1560  	}
  1561  	return nil
  1562  }
  1563  
  1564  func (m *TestVersion3LoneNesting) GetNonCriticalField() string {
  1565  	if m != nil {
  1566  		return m.NonCriticalField
  1567  	}
  1568  	return ""
  1569  }
  1570  
  1571  func (m *TestVersion3LoneNesting) GetInner1() *TestVersion3LoneNesting_Inner1 {
  1572  	if m != nil {
  1573  		return m.Inner1
  1574  	}
  1575  	return nil
  1576  }
  1577  
  1578  func (m *TestVersion3LoneNesting) GetInner2() *TestVersion3LoneNesting_Inner2 {
  1579  	if m != nil {
  1580  		return m.Inner2
  1581  	}
  1582  	return nil
  1583  }
  1584  
  1585  // XXX_OneofWrappers is for the internal use of the proto package.
  1586  func (*TestVersion3LoneNesting) XXX_OneofWrappers() []interface{} {
  1587  	return []interface{}{
  1588  		(*TestVersion3LoneNesting_F)(nil),
  1589  	}
  1590  }
  1591  
  1592  type TestVersion3LoneNesting_Inner1 struct {
  1593  	Id    int64                                      `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
  1594  	Name  string                                     `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
  1595  	Inner *TestVersion3LoneNesting_Inner1_InnerInner `protobuf:"bytes,3,opt,name=inner,proto3" json:"inner,omitempty"`
  1596  }
  1597  
  1598  func (m *TestVersion3LoneNesting_Inner1) Reset()         { *m = TestVersion3LoneNesting_Inner1{} }
  1599  func (m *TestVersion3LoneNesting_Inner1) String() string { return proto.CompactTextString(m) }
  1600  func (*TestVersion3LoneNesting_Inner1) ProtoMessage()    {}
  1601  func (*TestVersion3LoneNesting_Inner1) Descriptor() ([]byte, []int) {
  1602  	return fileDescriptor_fe4560133be9209a, []int{15, 0}
  1603  }
  1604  func (m *TestVersion3LoneNesting_Inner1) XXX_Unmarshal(b []byte) error {
  1605  	return m.Unmarshal(b)
  1606  }
  1607  func (m *TestVersion3LoneNesting_Inner1) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1608  	if deterministic {
  1609  		return xxx_messageInfo_TestVersion3LoneNesting_Inner1.Marshal(b, m, deterministic)
  1610  	} else {
  1611  		b = b[:cap(b)]
  1612  		n, err := m.MarshalToSizedBuffer(b)
  1613  		if err != nil {
  1614  			return nil, err
  1615  		}
  1616  		return b[:n], nil
  1617  	}
  1618  }
  1619  func (m *TestVersion3LoneNesting_Inner1) XXX_Merge(src proto.Message) {
  1620  	xxx_messageInfo_TestVersion3LoneNesting_Inner1.Merge(m, src)
  1621  }
  1622  func (m *TestVersion3LoneNesting_Inner1) XXX_Size() int {
  1623  	return m.Size()
  1624  }
  1625  func (m *TestVersion3LoneNesting_Inner1) XXX_DiscardUnknown() {
  1626  	xxx_messageInfo_TestVersion3LoneNesting_Inner1.DiscardUnknown(m)
  1627  }
  1628  
  1629  var xxx_messageInfo_TestVersion3LoneNesting_Inner1 proto.InternalMessageInfo
  1630  
  1631  func (m *TestVersion3LoneNesting_Inner1) GetId() int64 {
  1632  	if m != nil {
  1633  		return m.Id
  1634  	}
  1635  	return 0
  1636  }
  1637  
  1638  func (m *TestVersion3LoneNesting_Inner1) GetName() string {
  1639  	if m != nil {
  1640  		return m.Name
  1641  	}
  1642  	return ""
  1643  }
  1644  
  1645  func (m *TestVersion3LoneNesting_Inner1) GetInner() *TestVersion3LoneNesting_Inner1_InnerInner {
  1646  	if m != nil {
  1647  		return m.Inner
  1648  	}
  1649  	return nil
  1650  }
  1651  
  1652  type TestVersion3LoneNesting_Inner1_InnerInner struct {
  1653  	Id   string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  1654  	City string `protobuf:"bytes,2,opt,name=city,proto3" json:"city,omitempty"`
  1655  }
  1656  
  1657  func (m *TestVersion3LoneNesting_Inner1_InnerInner) Reset() {
  1658  	*m = TestVersion3LoneNesting_Inner1_InnerInner{}
  1659  }
  1660  func (m *TestVersion3LoneNesting_Inner1_InnerInner) String() string {
  1661  	return proto.CompactTextString(m)
  1662  }
  1663  func (*TestVersion3LoneNesting_Inner1_InnerInner) ProtoMessage() {}
  1664  func (*TestVersion3LoneNesting_Inner1_InnerInner) Descriptor() ([]byte, []int) {
  1665  	return fileDescriptor_fe4560133be9209a, []int{15, 0, 0}
  1666  }
  1667  func (m *TestVersion3LoneNesting_Inner1_InnerInner) XXX_Unmarshal(b []byte) error {
  1668  	return m.Unmarshal(b)
  1669  }
  1670  func (m *TestVersion3LoneNesting_Inner1_InnerInner) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1671  	if deterministic {
  1672  		return xxx_messageInfo_TestVersion3LoneNesting_Inner1_InnerInner.Marshal(b, m, deterministic)
  1673  	} else {
  1674  		b = b[:cap(b)]
  1675  		n, err := m.MarshalToSizedBuffer(b)
  1676  		if err != nil {
  1677  			return nil, err
  1678  		}
  1679  		return b[:n], nil
  1680  	}
  1681  }
  1682  func (m *TestVersion3LoneNesting_Inner1_InnerInner) XXX_Merge(src proto.Message) {
  1683  	xxx_messageInfo_TestVersion3LoneNesting_Inner1_InnerInner.Merge(m, src)
  1684  }
  1685  func (m *TestVersion3LoneNesting_Inner1_InnerInner) XXX_Size() int {
  1686  	return m.Size()
  1687  }
  1688  func (m *TestVersion3LoneNesting_Inner1_InnerInner) XXX_DiscardUnknown() {
  1689  	xxx_messageInfo_TestVersion3LoneNesting_Inner1_InnerInner.DiscardUnknown(m)
  1690  }
  1691  
  1692  var xxx_messageInfo_TestVersion3LoneNesting_Inner1_InnerInner proto.InternalMessageInfo
  1693  
  1694  func (m *TestVersion3LoneNesting_Inner1_InnerInner) GetId() string {
  1695  	if m != nil {
  1696  		return m.Id
  1697  	}
  1698  	return ""
  1699  }
  1700  
  1701  func (m *TestVersion3LoneNesting_Inner1_InnerInner) GetCity() string {
  1702  	if m != nil {
  1703  		return m.City
  1704  	}
  1705  	return ""
  1706  }
  1707  
  1708  type TestVersion3LoneNesting_Inner2 struct {
  1709  	Id      string                                     `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  1710  	Country string                                     `protobuf:"bytes,2,opt,name=country,proto3" json:"country,omitempty"`
  1711  	Inner   *TestVersion3LoneNesting_Inner2_InnerInner `protobuf:"bytes,3,opt,name=inner,proto3" json:"inner,omitempty"`
  1712  }
  1713  
  1714  func (m *TestVersion3LoneNesting_Inner2) Reset()         { *m = TestVersion3LoneNesting_Inner2{} }
  1715  func (m *TestVersion3LoneNesting_Inner2) String() string { return proto.CompactTextString(m) }
  1716  func (*TestVersion3LoneNesting_Inner2) ProtoMessage()    {}
  1717  func (*TestVersion3LoneNesting_Inner2) Descriptor() ([]byte, []int) {
  1718  	return fileDescriptor_fe4560133be9209a, []int{15, 1}
  1719  }
  1720  func (m *TestVersion3LoneNesting_Inner2) XXX_Unmarshal(b []byte) error {
  1721  	return m.Unmarshal(b)
  1722  }
  1723  func (m *TestVersion3LoneNesting_Inner2) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1724  	if deterministic {
  1725  		return xxx_messageInfo_TestVersion3LoneNesting_Inner2.Marshal(b, m, deterministic)
  1726  	} else {
  1727  		b = b[:cap(b)]
  1728  		n, err := m.MarshalToSizedBuffer(b)
  1729  		if err != nil {
  1730  			return nil, err
  1731  		}
  1732  		return b[:n], nil
  1733  	}
  1734  }
  1735  func (m *TestVersion3LoneNesting_Inner2) XXX_Merge(src proto.Message) {
  1736  	xxx_messageInfo_TestVersion3LoneNesting_Inner2.Merge(m, src)
  1737  }
  1738  func (m *TestVersion3LoneNesting_Inner2) XXX_Size() int {
  1739  	return m.Size()
  1740  }
  1741  func (m *TestVersion3LoneNesting_Inner2) XXX_DiscardUnknown() {
  1742  	xxx_messageInfo_TestVersion3LoneNesting_Inner2.DiscardUnknown(m)
  1743  }
  1744  
  1745  var xxx_messageInfo_TestVersion3LoneNesting_Inner2 proto.InternalMessageInfo
  1746  
  1747  func (m *TestVersion3LoneNesting_Inner2) GetId() string {
  1748  	if m != nil {
  1749  		return m.Id
  1750  	}
  1751  	return ""
  1752  }
  1753  
  1754  func (m *TestVersion3LoneNesting_Inner2) GetCountry() string {
  1755  	if m != nil {
  1756  		return m.Country
  1757  	}
  1758  	return ""
  1759  }
  1760  
  1761  func (m *TestVersion3LoneNesting_Inner2) GetInner() *TestVersion3LoneNesting_Inner2_InnerInner {
  1762  	if m != nil {
  1763  		return m.Inner
  1764  	}
  1765  	return nil
  1766  }
  1767  
  1768  type TestVersion3LoneNesting_Inner2_InnerInner struct {
  1769  	Id   string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  1770  	City string `protobuf:"bytes,2,opt,name=city,proto3" json:"city,omitempty"`
  1771  }
  1772  
  1773  func (m *TestVersion3LoneNesting_Inner2_InnerInner) Reset() {
  1774  	*m = TestVersion3LoneNesting_Inner2_InnerInner{}
  1775  }
  1776  func (m *TestVersion3LoneNesting_Inner2_InnerInner) String() string {
  1777  	return proto.CompactTextString(m)
  1778  }
  1779  func (*TestVersion3LoneNesting_Inner2_InnerInner) ProtoMessage() {}
  1780  func (*TestVersion3LoneNesting_Inner2_InnerInner) Descriptor() ([]byte, []int) {
  1781  	return fileDescriptor_fe4560133be9209a, []int{15, 1, 0}
  1782  }
  1783  func (m *TestVersion3LoneNesting_Inner2_InnerInner) XXX_Unmarshal(b []byte) error {
  1784  	return m.Unmarshal(b)
  1785  }
  1786  func (m *TestVersion3LoneNesting_Inner2_InnerInner) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1787  	if deterministic {
  1788  		return xxx_messageInfo_TestVersion3LoneNesting_Inner2_InnerInner.Marshal(b, m, deterministic)
  1789  	} else {
  1790  		b = b[:cap(b)]
  1791  		n, err := m.MarshalToSizedBuffer(b)
  1792  		if err != nil {
  1793  			return nil, err
  1794  		}
  1795  		return b[:n], nil
  1796  	}
  1797  }
  1798  func (m *TestVersion3LoneNesting_Inner2_InnerInner) XXX_Merge(src proto.Message) {
  1799  	xxx_messageInfo_TestVersion3LoneNesting_Inner2_InnerInner.Merge(m, src)
  1800  }
  1801  func (m *TestVersion3LoneNesting_Inner2_InnerInner) XXX_Size() int {
  1802  	return m.Size()
  1803  }
  1804  func (m *TestVersion3LoneNesting_Inner2_InnerInner) XXX_DiscardUnknown() {
  1805  	xxx_messageInfo_TestVersion3LoneNesting_Inner2_InnerInner.DiscardUnknown(m)
  1806  }
  1807  
  1808  var xxx_messageInfo_TestVersion3LoneNesting_Inner2_InnerInner proto.InternalMessageInfo
  1809  
  1810  func (m *TestVersion3LoneNesting_Inner2_InnerInner) GetId() string {
  1811  	if m != nil {
  1812  		return m.Id
  1813  	}
  1814  	return ""
  1815  }
  1816  
  1817  func (m *TestVersion3LoneNesting_Inner2_InnerInner) GetCity() string {
  1818  	if m != nil {
  1819  		return m.City
  1820  	}
  1821  	return ""
  1822  }
  1823  
  1824  type TestVersion4LoneNesting struct {
  1825  	X int64           `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"`
  1826  	A *TestVersion3   `protobuf:"bytes,2,opt,name=a,proto3" json:"a,omitempty"`
  1827  	B *TestVersion3   `protobuf:"bytes,3,opt,name=b,proto3" json:"b,omitempty"`
  1828  	C []*TestVersion3 `protobuf:"bytes,4,rep,name=c,proto3" json:"c,omitempty"`
  1829  	D []*TestVersion3 `protobuf:"bytes,5,rep,name=d,proto3" json:"d,omitempty"`
  1830  	// Types that are valid to be assigned to Sum:
  1831  	//
  1832  	//	*TestVersion4LoneNesting_F
  1833  	Sum isTestVersion4LoneNesting_Sum `protobuf_oneof:"sum"`
  1834  	G   *types.Any                    `protobuf:"bytes,8,opt,name=g,proto3" json:"g,omitempty"`
  1835  	H   []*TestVersion1               `protobuf:"bytes,9,rep,name=h,proto3" json:"h,omitempty"`
  1836  	// google.protobuf.Timestamp i = 10;
  1837  	// google.protobuf.Timestamp j = 11; // [(gogoproto.stdtime) = true];
  1838  	*Customer1       `protobuf:"bytes,12,opt,name=k,proto3,embedded=k" json:"k,omitempty"`
  1839  	NonCriticalField string                          `protobuf:"bytes,1031,opt,name=non_critical_field,json=nonCriticalField,proto3" json:"non_critical_field,omitempty"`
  1840  	Inner1           *TestVersion4LoneNesting_Inner1 `protobuf:"bytes,14,opt,name=inner1,proto3" json:"inner1,omitempty"`
  1841  	Inner2           *TestVersion4LoneNesting_Inner2 `protobuf:"bytes,15,opt,name=inner2,proto3" json:"inner2,omitempty"`
  1842  }
  1843  
  1844  func (m *TestVersion4LoneNesting) Reset()         { *m = TestVersion4LoneNesting{} }
  1845  func (m *TestVersion4LoneNesting) String() string { return proto.CompactTextString(m) }
  1846  func (*TestVersion4LoneNesting) ProtoMessage()    {}
  1847  func (*TestVersion4LoneNesting) Descriptor() ([]byte, []int) {
  1848  	return fileDescriptor_fe4560133be9209a, []int{16}
  1849  }
  1850  func (m *TestVersion4LoneNesting) XXX_Unmarshal(b []byte) error {
  1851  	return m.Unmarshal(b)
  1852  }
  1853  func (m *TestVersion4LoneNesting) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1854  	if deterministic {
  1855  		return xxx_messageInfo_TestVersion4LoneNesting.Marshal(b, m, deterministic)
  1856  	} else {
  1857  		b = b[:cap(b)]
  1858  		n, err := m.MarshalToSizedBuffer(b)
  1859  		if err != nil {
  1860  			return nil, err
  1861  		}
  1862  		return b[:n], nil
  1863  	}
  1864  }
  1865  func (m *TestVersion4LoneNesting) XXX_Merge(src proto.Message) {
  1866  	xxx_messageInfo_TestVersion4LoneNesting.Merge(m, src)
  1867  }
  1868  func (m *TestVersion4LoneNesting) XXX_Size() int {
  1869  	return m.Size()
  1870  }
  1871  func (m *TestVersion4LoneNesting) XXX_DiscardUnknown() {
  1872  	xxx_messageInfo_TestVersion4LoneNesting.DiscardUnknown(m)
  1873  }
  1874  
  1875  var xxx_messageInfo_TestVersion4LoneNesting proto.InternalMessageInfo
  1876  
  1877  type isTestVersion4LoneNesting_Sum interface {
  1878  	isTestVersion4LoneNesting_Sum()
  1879  	MarshalTo([]byte) (int, error)
  1880  	Size() int
  1881  }
  1882  
  1883  type TestVersion4LoneNesting_F struct {
  1884  	F *TestVersion3LoneNesting `protobuf:"bytes,7,opt,name=f,proto3,oneof" json:"f,omitempty"`
  1885  }
  1886  
  1887  func (*TestVersion4LoneNesting_F) isTestVersion4LoneNesting_Sum() {}
  1888  
  1889  func (m *TestVersion4LoneNesting) GetSum() isTestVersion4LoneNesting_Sum {
  1890  	if m != nil {
  1891  		return m.Sum
  1892  	}
  1893  	return nil
  1894  }
  1895  
  1896  func (m *TestVersion4LoneNesting) GetX() int64 {
  1897  	if m != nil {
  1898  		return m.X
  1899  	}
  1900  	return 0
  1901  }
  1902  
  1903  func (m *TestVersion4LoneNesting) GetA() *TestVersion3 {
  1904  	if m != nil {
  1905  		return m.A
  1906  	}
  1907  	return nil
  1908  }
  1909  
  1910  func (m *TestVersion4LoneNesting) GetB() *TestVersion3 {
  1911  	if m != nil {
  1912  		return m.B
  1913  	}
  1914  	return nil
  1915  }
  1916  
  1917  func (m *TestVersion4LoneNesting) GetC() []*TestVersion3 {
  1918  	if m != nil {
  1919  		return m.C
  1920  	}
  1921  	return nil
  1922  }
  1923  
  1924  func (m *TestVersion4LoneNesting) GetD() []*TestVersion3 {
  1925  	if m != nil {
  1926  		return m.D
  1927  	}
  1928  	return nil
  1929  }
  1930  
  1931  func (m *TestVersion4LoneNesting) GetF() *TestVersion3LoneNesting {
  1932  	if x, ok := m.GetSum().(*TestVersion4LoneNesting_F); ok {
  1933  		return x.F
  1934  	}
  1935  	return nil
  1936  }
  1937  
  1938  func (m *TestVersion4LoneNesting) GetG() *types.Any {
  1939  	if m != nil {
  1940  		return m.G
  1941  	}
  1942  	return nil
  1943  }
  1944  
  1945  func (m *TestVersion4LoneNesting) GetH() []*TestVersion1 {
  1946  	if m != nil {
  1947  		return m.H
  1948  	}
  1949  	return nil
  1950  }
  1951  
  1952  func (m *TestVersion4LoneNesting) GetNonCriticalField() string {
  1953  	if m != nil {
  1954  		return m.NonCriticalField
  1955  	}
  1956  	return ""
  1957  }
  1958  
  1959  func (m *TestVersion4LoneNesting) GetInner1() *TestVersion4LoneNesting_Inner1 {
  1960  	if m != nil {
  1961  		return m.Inner1
  1962  	}
  1963  	return nil
  1964  }
  1965  
  1966  func (m *TestVersion4LoneNesting) GetInner2() *TestVersion4LoneNesting_Inner2 {
  1967  	if m != nil {
  1968  		return m.Inner2
  1969  	}
  1970  	return nil
  1971  }
  1972  
  1973  // XXX_OneofWrappers is for the internal use of the proto package.
  1974  func (*TestVersion4LoneNesting) XXX_OneofWrappers() []interface{} {
  1975  	return []interface{}{
  1976  		(*TestVersion4LoneNesting_F)(nil),
  1977  	}
  1978  }
  1979  
  1980  type TestVersion4LoneNesting_Inner1 struct {
  1981  	Id    int64                                      `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
  1982  	Name  string                                     `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
  1983  	Inner *TestVersion4LoneNesting_Inner1_InnerInner `protobuf:"bytes,3,opt,name=inner,proto3" json:"inner,omitempty"`
  1984  }
  1985  
  1986  func (m *TestVersion4LoneNesting_Inner1) Reset()         { *m = TestVersion4LoneNesting_Inner1{} }
  1987  func (m *TestVersion4LoneNesting_Inner1) String() string { return proto.CompactTextString(m) }
  1988  func (*TestVersion4LoneNesting_Inner1) ProtoMessage()    {}
  1989  func (*TestVersion4LoneNesting_Inner1) Descriptor() ([]byte, []int) {
  1990  	return fileDescriptor_fe4560133be9209a, []int{16, 0}
  1991  }
  1992  func (m *TestVersion4LoneNesting_Inner1) XXX_Unmarshal(b []byte) error {
  1993  	return m.Unmarshal(b)
  1994  }
  1995  func (m *TestVersion4LoneNesting_Inner1) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1996  	if deterministic {
  1997  		return xxx_messageInfo_TestVersion4LoneNesting_Inner1.Marshal(b, m, deterministic)
  1998  	} else {
  1999  		b = b[:cap(b)]
  2000  		n, err := m.MarshalToSizedBuffer(b)
  2001  		if err != nil {
  2002  			return nil, err
  2003  		}
  2004  		return b[:n], nil
  2005  	}
  2006  }
  2007  func (m *TestVersion4LoneNesting_Inner1) XXX_Merge(src proto.Message) {
  2008  	xxx_messageInfo_TestVersion4LoneNesting_Inner1.Merge(m, src)
  2009  }
  2010  func (m *TestVersion4LoneNesting_Inner1) XXX_Size() int {
  2011  	return m.Size()
  2012  }
  2013  func (m *TestVersion4LoneNesting_Inner1) XXX_DiscardUnknown() {
  2014  	xxx_messageInfo_TestVersion4LoneNesting_Inner1.DiscardUnknown(m)
  2015  }
  2016  
  2017  var xxx_messageInfo_TestVersion4LoneNesting_Inner1 proto.InternalMessageInfo
  2018  
  2019  func (m *TestVersion4LoneNesting_Inner1) GetId() int64 {
  2020  	if m != nil {
  2021  		return m.Id
  2022  	}
  2023  	return 0
  2024  }
  2025  
  2026  func (m *TestVersion4LoneNesting_Inner1) GetName() string {
  2027  	if m != nil {
  2028  		return m.Name
  2029  	}
  2030  	return ""
  2031  }
  2032  
  2033  func (m *TestVersion4LoneNesting_Inner1) GetInner() *TestVersion4LoneNesting_Inner1_InnerInner {
  2034  	if m != nil {
  2035  		return m.Inner
  2036  	}
  2037  	return nil
  2038  }
  2039  
  2040  type TestVersion4LoneNesting_Inner1_InnerInner struct {
  2041  	Id   int64  `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
  2042  	City string `protobuf:"bytes,2,opt,name=city,proto3" json:"city,omitempty"`
  2043  }
  2044  
  2045  func (m *TestVersion4LoneNesting_Inner1_InnerInner) Reset() {
  2046  	*m = TestVersion4LoneNesting_Inner1_InnerInner{}
  2047  }
  2048  func (m *TestVersion4LoneNesting_Inner1_InnerInner) String() string {
  2049  	return proto.CompactTextString(m)
  2050  }
  2051  func (*TestVersion4LoneNesting_Inner1_InnerInner) ProtoMessage() {}
  2052  func (*TestVersion4LoneNesting_Inner1_InnerInner) Descriptor() ([]byte, []int) {
  2053  	return fileDescriptor_fe4560133be9209a, []int{16, 0, 0}
  2054  }
  2055  func (m *TestVersion4LoneNesting_Inner1_InnerInner) XXX_Unmarshal(b []byte) error {
  2056  	return m.Unmarshal(b)
  2057  }
  2058  func (m *TestVersion4LoneNesting_Inner1_InnerInner) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2059  	if deterministic {
  2060  		return xxx_messageInfo_TestVersion4LoneNesting_Inner1_InnerInner.Marshal(b, m, deterministic)
  2061  	} else {
  2062  		b = b[:cap(b)]
  2063  		n, err := m.MarshalToSizedBuffer(b)
  2064  		if err != nil {
  2065  			return nil, err
  2066  		}
  2067  		return b[:n], nil
  2068  	}
  2069  }
  2070  func (m *TestVersion4LoneNesting_Inner1_InnerInner) XXX_Merge(src proto.Message) {
  2071  	xxx_messageInfo_TestVersion4LoneNesting_Inner1_InnerInner.Merge(m, src)
  2072  }
  2073  func (m *TestVersion4LoneNesting_Inner1_InnerInner) XXX_Size() int {
  2074  	return m.Size()
  2075  }
  2076  func (m *TestVersion4LoneNesting_Inner1_InnerInner) XXX_DiscardUnknown() {
  2077  	xxx_messageInfo_TestVersion4LoneNesting_Inner1_InnerInner.DiscardUnknown(m)
  2078  }
  2079  
  2080  var xxx_messageInfo_TestVersion4LoneNesting_Inner1_InnerInner proto.InternalMessageInfo
  2081  
  2082  func (m *TestVersion4LoneNesting_Inner1_InnerInner) GetId() int64 {
  2083  	if m != nil {
  2084  		return m.Id
  2085  	}
  2086  	return 0
  2087  }
  2088  
  2089  func (m *TestVersion4LoneNesting_Inner1_InnerInner) GetCity() string {
  2090  	if m != nil {
  2091  		return m.City
  2092  	}
  2093  	return ""
  2094  }
  2095  
  2096  type TestVersion4LoneNesting_Inner2 struct {
  2097  	Id      string                                     `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  2098  	Country string                                     `protobuf:"bytes,2,opt,name=country,proto3" json:"country,omitempty"`
  2099  	Inner   *TestVersion4LoneNesting_Inner2_InnerInner `protobuf:"bytes,3,opt,name=inner,proto3" json:"inner,omitempty"`
  2100  }
  2101  
  2102  func (m *TestVersion4LoneNesting_Inner2) Reset()         { *m = TestVersion4LoneNesting_Inner2{} }
  2103  func (m *TestVersion4LoneNesting_Inner2) String() string { return proto.CompactTextString(m) }
  2104  func (*TestVersion4LoneNesting_Inner2) ProtoMessage()    {}
  2105  func (*TestVersion4LoneNesting_Inner2) Descriptor() ([]byte, []int) {
  2106  	return fileDescriptor_fe4560133be9209a, []int{16, 1}
  2107  }
  2108  func (m *TestVersion4LoneNesting_Inner2) XXX_Unmarshal(b []byte) error {
  2109  	return m.Unmarshal(b)
  2110  }
  2111  func (m *TestVersion4LoneNesting_Inner2) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2112  	if deterministic {
  2113  		return xxx_messageInfo_TestVersion4LoneNesting_Inner2.Marshal(b, m, deterministic)
  2114  	} else {
  2115  		b = b[:cap(b)]
  2116  		n, err := m.MarshalToSizedBuffer(b)
  2117  		if err != nil {
  2118  			return nil, err
  2119  		}
  2120  		return b[:n], nil
  2121  	}
  2122  }
  2123  func (m *TestVersion4LoneNesting_Inner2) XXX_Merge(src proto.Message) {
  2124  	xxx_messageInfo_TestVersion4LoneNesting_Inner2.Merge(m, src)
  2125  }
  2126  func (m *TestVersion4LoneNesting_Inner2) XXX_Size() int {
  2127  	return m.Size()
  2128  }
  2129  func (m *TestVersion4LoneNesting_Inner2) XXX_DiscardUnknown() {
  2130  	xxx_messageInfo_TestVersion4LoneNesting_Inner2.DiscardUnknown(m)
  2131  }
  2132  
  2133  var xxx_messageInfo_TestVersion4LoneNesting_Inner2 proto.InternalMessageInfo
  2134  
  2135  func (m *TestVersion4LoneNesting_Inner2) GetId() string {
  2136  	if m != nil {
  2137  		return m.Id
  2138  	}
  2139  	return ""
  2140  }
  2141  
  2142  func (m *TestVersion4LoneNesting_Inner2) GetCountry() string {
  2143  	if m != nil {
  2144  		return m.Country
  2145  	}
  2146  	return ""
  2147  }
  2148  
  2149  func (m *TestVersion4LoneNesting_Inner2) GetInner() *TestVersion4LoneNesting_Inner2_InnerInner {
  2150  	if m != nil {
  2151  		return m.Inner
  2152  	}
  2153  	return nil
  2154  }
  2155  
  2156  type TestVersion4LoneNesting_Inner2_InnerInner struct {
  2157  	Id    string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  2158  	Value int64  `protobuf:"varint,2,opt,name=value,proto3" json:"value,omitempty"`
  2159  }
  2160  
  2161  func (m *TestVersion4LoneNesting_Inner2_InnerInner) Reset() {
  2162  	*m = TestVersion4LoneNesting_Inner2_InnerInner{}
  2163  }
  2164  func (m *TestVersion4LoneNesting_Inner2_InnerInner) String() string {
  2165  	return proto.CompactTextString(m)
  2166  }
  2167  func (*TestVersion4LoneNesting_Inner2_InnerInner) ProtoMessage() {}
  2168  func (*TestVersion4LoneNesting_Inner2_InnerInner) Descriptor() ([]byte, []int) {
  2169  	return fileDescriptor_fe4560133be9209a, []int{16, 1, 0}
  2170  }
  2171  func (m *TestVersion4LoneNesting_Inner2_InnerInner) XXX_Unmarshal(b []byte) error {
  2172  	return m.Unmarshal(b)
  2173  }
  2174  func (m *TestVersion4LoneNesting_Inner2_InnerInner) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2175  	if deterministic {
  2176  		return xxx_messageInfo_TestVersion4LoneNesting_Inner2_InnerInner.Marshal(b, m, deterministic)
  2177  	} else {
  2178  		b = b[:cap(b)]
  2179  		n, err := m.MarshalToSizedBuffer(b)
  2180  		if err != nil {
  2181  			return nil, err
  2182  		}
  2183  		return b[:n], nil
  2184  	}
  2185  }
  2186  func (m *TestVersion4LoneNesting_Inner2_InnerInner) XXX_Merge(src proto.Message) {
  2187  	xxx_messageInfo_TestVersion4LoneNesting_Inner2_InnerInner.Merge(m, src)
  2188  }
  2189  func (m *TestVersion4LoneNesting_Inner2_InnerInner) XXX_Size() int {
  2190  	return m.Size()
  2191  }
  2192  func (m *TestVersion4LoneNesting_Inner2_InnerInner) XXX_DiscardUnknown() {
  2193  	xxx_messageInfo_TestVersion4LoneNesting_Inner2_InnerInner.DiscardUnknown(m)
  2194  }
  2195  
  2196  var xxx_messageInfo_TestVersion4LoneNesting_Inner2_InnerInner proto.InternalMessageInfo
  2197  
  2198  func (m *TestVersion4LoneNesting_Inner2_InnerInner) GetId() string {
  2199  	if m != nil {
  2200  		return m.Id
  2201  	}
  2202  	return ""
  2203  }
  2204  
  2205  func (m *TestVersion4LoneNesting_Inner2_InnerInner) GetValue() int64 {
  2206  	if m != nil {
  2207  		return m.Value
  2208  	}
  2209  	return 0
  2210  }
  2211  
  2212  type TestVersionFD1 struct {
  2213  	X int64         `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"`
  2214  	A *TestVersion1 `protobuf:"bytes,2,opt,name=a,proto3" json:"a,omitempty"`
  2215  	// Types that are valid to be assigned to Sum:
  2216  	//
  2217  	//	*TestVersionFD1_E
  2218  	//	*TestVersionFD1_F
  2219  	Sum isTestVersionFD1_Sum `protobuf_oneof:"sum"`
  2220  	G   *types.Any           `protobuf:"bytes,8,opt,name=g,proto3" json:"g,omitempty"`
  2221  	H   []*TestVersion1      `protobuf:"bytes,9,rep,name=h,proto3" json:"h,omitempty"`
  2222  }
  2223  
  2224  func (m *TestVersionFD1) Reset()         { *m = TestVersionFD1{} }
  2225  func (m *TestVersionFD1) String() string { return proto.CompactTextString(m) }
  2226  func (*TestVersionFD1) ProtoMessage()    {}
  2227  func (*TestVersionFD1) Descriptor() ([]byte, []int) {
  2228  	return fileDescriptor_fe4560133be9209a, []int{17}
  2229  }
  2230  func (m *TestVersionFD1) XXX_Unmarshal(b []byte) error {
  2231  	return m.Unmarshal(b)
  2232  }
  2233  func (m *TestVersionFD1) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2234  	if deterministic {
  2235  		return xxx_messageInfo_TestVersionFD1.Marshal(b, m, deterministic)
  2236  	} else {
  2237  		b = b[:cap(b)]
  2238  		n, err := m.MarshalToSizedBuffer(b)
  2239  		if err != nil {
  2240  			return nil, err
  2241  		}
  2242  		return b[:n], nil
  2243  	}
  2244  }
  2245  func (m *TestVersionFD1) XXX_Merge(src proto.Message) {
  2246  	xxx_messageInfo_TestVersionFD1.Merge(m, src)
  2247  }
  2248  func (m *TestVersionFD1) XXX_Size() int {
  2249  	return m.Size()
  2250  }
  2251  func (m *TestVersionFD1) XXX_DiscardUnknown() {
  2252  	xxx_messageInfo_TestVersionFD1.DiscardUnknown(m)
  2253  }
  2254  
  2255  var xxx_messageInfo_TestVersionFD1 proto.InternalMessageInfo
  2256  
  2257  type isTestVersionFD1_Sum interface {
  2258  	isTestVersionFD1_Sum()
  2259  	MarshalTo([]byte) (int, error)
  2260  	Size() int
  2261  }
  2262  
  2263  type TestVersionFD1_E struct {
  2264  	E int32 `protobuf:"varint,6,opt,name=e,proto3,oneof" json:"e,omitempty"`
  2265  }
  2266  type TestVersionFD1_F struct {
  2267  	F *TestVersion1 `protobuf:"bytes,7,opt,name=f,proto3,oneof" json:"f,omitempty"`
  2268  }
  2269  
  2270  func (*TestVersionFD1_E) isTestVersionFD1_Sum() {}
  2271  func (*TestVersionFD1_F) isTestVersionFD1_Sum() {}
  2272  
  2273  func (m *TestVersionFD1) GetSum() isTestVersionFD1_Sum {
  2274  	if m != nil {
  2275  		return m.Sum
  2276  	}
  2277  	return nil
  2278  }
  2279  
  2280  func (m *TestVersionFD1) GetX() int64 {
  2281  	if m != nil {
  2282  		return m.X
  2283  	}
  2284  	return 0
  2285  }
  2286  
  2287  func (m *TestVersionFD1) GetA() *TestVersion1 {
  2288  	if m != nil {
  2289  		return m.A
  2290  	}
  2291  	return nil
  2292  }
  2293  
  2294  func (m *TestVersionFD1) GetE() int32 {
  2295  	if x, ok := m.GetSum().(*TestVersionFD1_E); ok {
  2296  		return x.E
  2297  	}
  2298  	return 0
  2299  }
  2300  
  2301  func (m *TestVersionFD1) GetF() *TestVersion1 {
  2302  	if x, ok := m.GetSum().(*TestVersionFD1_F); ok {
  2303  		return x.F
  2304  	}
  2305  	return nil
  2306  }
  2307  
  2308  func (m *TestVersionFD1) GetG() *types.Any {
  2309  	if m != nil {
  2310  		return m.G
  2311  	}
  2312  	return nil
  2313  }
  2314  
  2315  func (m *TestVersionFD1) GetH() []*TestVersion1 {
  2316  	if m != nil {
  2317  		return m.H
  2318  	}
  2319  	return nil
  2320  }
  2321  
  2322  // XXX_OneofWrappers is for the internal use of the proto package.
  2323  func (*TestVersionFD1) XXX_OneofWrappers() []interface{} {
  2324  	return []interface{}{
  2325  		(*TestVersionFD1_E)(nil),
  2326  		(*TestVersionFD1_F)(nil),
  2327  	}
  2328  }
  2329  
  2330  type TestVersionFD1WithExtraAny struct {
  2331  	X int64         `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"`
  2332  	A *TestVersion1 `protobuf:"bytes,2,opt,name=a,proto3" json:"a,omitempty"`
  2333  	// Types that are valid to be assigned to Sum:
  2334  	//
  2335  	//	*TestVersionFD1WithExtraAny_E
  2336  	//	*TestVersionFD1WithExtraAny_F
  2337  	Sum isTestVersionFD1WithExtraAny_Sum `protobuf_oneof:"sum"`
  2338  	G   *AnyWithExtra                    `protobuf:"bytes,8,opt,name=g,proto3" json:"g,omitempty"`
  2339  	H   []*TestVersion1                  `protobuf:"bytes,9,rep,name=h,proto3" json:"h,omitempty"`
  2340  }
  2341  
  2342  func (m *TestVersionFD1WithExtraAny) Reset()         { *m = TestVersionFD1WithExtraAny{} }
  2343  func (m *TestVersionFD1WithExtraAny) String() string { return proto.CompactTextString(m) }
  2344  func (*TestVersionFD1WithExtraAny) ProtoMessage()    {}
  2345  func (*TestVersionFD1WithExtraAny) Descriptor() ([]byte, []int) {
  2346  	return fileDescriptor_fe4560133be9209a, []int{18}
  2347  }
  2348  func (m *TestVersionFD1WithExtraAny) XXX_Unmarshal(b []byte) error {
  2349  	return m.Unmarshal(b)
  2350  }
  2351  func (m *TestVersionFD1WithExtraAny) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2352  	if deterministic {
  2353  		return xxx_messageInfo_TestVersionFD1WithExtraAny.Marshal(b, m, deterministic)
  2354  	} else {
  2355  		b = b[:cap(b)]
  2356  		n, err := m.MarshalToSizedBuffer(b)
  2357  		if err != nil {
  2358  			return nil, err
  2359  		}
  2360  		return b[:n], nil
  2361  	}
  2362  }
  2363  func (m *TestVersionFD1WithExtraAny) XXX_Merge(src proto.Message) {
  2364  	xxx_messageInfo_TestVersionFD1WithExtraAny.Merge(m, src)
  2365  }
  2366  func (m *TestVersionFD1WithExtraAny) XXX_Size() int {
  2367  	return m.Size()
  2368  }
  2369  func (m *TestVersionFD1WithExtraAny) XXX_DiscardUnknown() {
  2370  	xxx_messageInfo_TestVersionFD1WithExtraAny.DiscardUnknown(m)
  2371  }
  2372  
  2373  var xxx_messageInfo_TestVersionFD1WithExtraAny proto.InternalMessageInfo
  2374  
  2375  type isTestVersionFD1WithExtraAny_Sum interface {
  2376  	isTestVersionFD1WithExtraAny_Sum()
  2377  	MarshalTo([]byte) (int, error)
  2378  	Size() int
  2379  }
  2380  
  2381  type TestVersionFD1WithExtraAny_E struct {
  2382  	E int32 `protobuf:"varint,6,opt,name=e,proto3,oneof" json:"e,omitempty"`
  2383  }
  2384  type TestVersionFD1WithExtraAny_F struct {
  2385  	F *TestVersion1 `protobuf:"bytes,7,opt,name=f,proto3,oneof" json:"f,omitempty"`
  2386  }
  2387  
  2388  func (*TestVersionFD1WithExtraAny_E) isTestVersionFD1WithExtraAny_Sum() {}
  2389  func (*TestVersionFD1WithExtraAny_F) isTestVersionFD1WithExtraAny_Sum() {}
  2390  
  2391  func (m *TestVersionFD1WithExtraAny) GetSum() isTestVersionFD1WithExtraAny_Sum {
  2392  	if m != nil {
  2393  		return m.Sum
  2394  	}
  2395  	return nil
  2396  }
  2397  
  2398  func (m *TestVersionFD1WithExtraAny) GetX() int64 {
  2399  	if m != nil {
  2400  		return m.X
  2401  	}
  2402  	return 0
  2403  }
  2404  
  2405  func (m *TestVersionFD1WithExtraAny) GetA() *TestVersion1 {
  2406  	if m != nil {
  2407  		return m.A
  2408  	}
  2409  	return nil
  2410  }
  2411  
  2412  func (m *TestVersionFD1WithExtraAny) GetE() int32 {
  2413  	if x, ok := m.GetSum().(*TestVersionFD1WithExtraAny_E); ok {
  2414  		return x.E
  2415  	}
  2416  	return 0
  2417  }
  2418  
  2419  func (m *TestVersionFD1WithExtraAny) GetF() *TestVersion1 {
  2420  	if x, ok := m.GetSum().(*TestVersionFD1WithExtraAny_F); ok {
  2421  		return x.F
  2422  	}
  2423  	return nil
  2424  }
  2425  
  2426  func (m *TestVersionFD1WithExtraAny) GetG() *AnyWithExtra {
  2427  	if m != nil {
  2428  		return m.G
  2429  	}
  2430  	return nil
  2431  }
  2432  
  2433  func (m *TestVersionFD1WithExtraAny) GetH() []*TestVersion1 {
  2434  	if m != nil {
  2435  		return m.H
  2436  	}
  2437  	return nil
  2438  }
  2439  
  2440  // XXX_OneofWrappers is for the internal use of the proto package.
  2441  func (*TestVersionFD1WithExtraAny) XXX_OneofWrappers() []interface{} {
  2442  	return []interface{}{
  2443  		(*TestVersionFD1WithExtraAny_E)(nil),
  2444  		(*TestVersionFD1WithExtraAny_F)(nil),
  2445  	}
  2446  }
  2447  
  2448  type AnyWithExtra struct {
  2449  	*types.Any `protobuf:"bytes,1,opt,name=a,proto3,embedded=a" json:"a,omitempty"`
  2450  	B          int64 `protobuf:"varint,3,opt,name=b,proto3" json:"b,omitempty"`
  2451  	C          int64 `protobuf:"varint,4,opt,name=c,proto3" json:"c,omitempty"`
  2452  }
  2453  
  2454  func (m *AnyWithExtra) Reset()         { *m = AnyWithExtra{} }
  2455  func (m *AnyWithExtra) String() string { return proto.CompactTextString(m) }
  2456  func (*AnyWithExtra) ProtoMessage()    {}
  2457  func (*AnyWithExtra) Descriptor() ([]byte, []int) {
  2458  	return fileDescriptor_fe4560133be9209a, []int{19}
  2459  }
  2460  func (m *AnyWithExtra) XXX_Unmarshal(b []byte) error {
  2461  	return m.Unmarshal(b)
  2462  }
  2463  func (m *AnyWithExtra) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2464  	if deterministic {
  2465  		return xxx_messageInfo_AnyWithExtra.Marshal(b, m, deterministic)
  2466  	} else {
  2467  		b = b[:cap(b)]
  2468  		n, err := m.MarshalToSizedBuffer(b)
  2469  		if err != nil {
  2470  			return nil, err
  2471  		}
  2472  		return b[:n], nil
  2473  	}
  2474  }
  2475  func (m *AnyWithExtra) XXX_Merge(src proto.Message) {
  2476  	xxx_messageInfo_AnyWithExtra.Merge(m, src)
  2477  }
  2478  func (m *AnyWithExtra) XXX_Size() int {
  2479  	return m.Size()
  2480  }
  2481  func (m *AnyWithExtra) XXX_DiscardUnknown() {
  2482  	xxx_messageInfo_AnyWithExtra.DiscardUnknown(m)
  2483  }
  2484  
  2485  var xxx_messageInfo_AnyWithExtra proto.InternalMessageInfo
  2486  
  2487  func (m *AnyWithExtra) GetB() int64 {
  2488  	if m != nil {
  2489  		return m.B
  2490  	}
  2491  	return 0
  2492  }
  2493  
  2494  func (m *AnyWithExtra) GetC() int64 {
  2495  	if m != nil {
  2496  		return m.C
  2497  	}
  2498  	return 0
  2499  }
  2500  
  2501  type TestUpdatedTxRaw struct {
  2502  	BodyBytes     []byte   `protobuf:"bytes,1,opt,name=body_bytes,json=bodyBytes,proto3" json:"body_bytes,omitempty"`
  2503  	AuthInfoBytes []byte   `protobuf:"bytes,2,opt,name=auth_info_bytes,json=authInfoBytes,proto3" json:"auth_info_bytes,omitempty"`
  2504  	Signatures    [][]byte `protobuf:"bytes,3,rep,name=signatures,proto3" json:"signatures,omitempty"`
  2505  	NewField_5    []byte   `protobuf:"bytes,5,opt,name=new_field_5,json=newField5,proto3" json:"new_field_5,omitempty"`
  2506  	NewField_1024 []byte   `protobuf:"bytes,1024,opt,name=new_field_1024,json=newField1024,proto3" json:"new_field_1024,omitempty"`
  2507  }
  2508  
  2509  func (m *TestUpdatedTxRaw) Reset()         { *m = TestUpdatedTxRaw{} }
  2510  func (m *TestUpdatedTxRaw) String() string { return proto.CompactTextString(m) }
  2511  func (*TestUpdatedTxRaw) ProtoMessage()    {}
  2512  func (*TestUpdatedTxRaw) Descriptor() ([]byte, []int) {
  2513  	return fileDescriptor_fe4560133be9209a, []int{20}
  2514  }
  2515  func (m *TestUpdatedTxRaw) XXX_Unmarshal(b []byte) error {
  2516  	return m.Unmarshal(b)
  2517  }
  2518  func (m *TestUpdatedTxRaw) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2519  	if deterministic {
  2520  		return xxx_messageInfo_TestUpdatedTxRaw.Marshal(b, m, deterministic)
  2521  	} else {
  2522  		b = b[:cap(b)]
  2523  		n, err := m.MarshalToSizedBuffer(b)
  2524  		if err != nil {
  2525  			return nil, err
  2526  		}
  2527  		return b[:n], nil
  2528  	}
  2529  }
  2530  func (m *TestUpdatedTxRaw) XXX_Merge(src proto.Message) {
  2531  	xxx_messageInfo_TestUpdatedTxRaw.Merge(m, src)
  2532  }
  2533  func (m *TestUpdatedTxRaw) XXX_Size() int {
  2534  	return m.Size()
  2535  }
  2536  func (m *TestUpdatedTxRaw) XXX_DiscardUnknown() {
  2537  	xxx_messageInfo_TestUpdatedTxRaw.DiscardUnknown(m)
  2538  }
  2539  
  2540  var xxx_messageInfo_TestUpdatedTxRaw proto.InternalMessageInfo
  2541  
  2542  func (m *TestUpdatedTxRaw) GetBodyBytes() []byte {
  2543  	if m != nil {
  2544  		return m.BodyBytes
  2545  	}
  2546  	return nil
  2547  }
  2548  
  2549  func (m *TestUpdatedTxRaw) GetAuthInfoBytes() []byte {
  2550  	if m != nil {
  2551  		return m.AuthInfoBytes
  2552  	}
  2553  	return nil
  2554  }
  2555  
  2556  func (m *TestUpdatedTxRaw) GetSignatures() [][]byte {
  2557  	if m != nil {
  2558  		return m.Signatures
  2559  	}
  2560  	return nil
  2561  }
  2562  
  2563  func (m *TestUpdatedTxRaw) GetNewField_5() []byte {
  2564  	if m != nil {
  2565  		return m.NewField_5
  2566  	}
  2567  	return nil
  2568  }
  2569  
  2570  func (m *TestUpdatedTxRaw) GetNewField_1024() []byte {
  2571  	if m != nil {
  2572  		return m.NewField_1024
  2573  	}
  2574  	return nil
  2575  }
  2576  
  2577  type TestUpdatedTxBody struct {
  2578  	Messages                     []*types.Any `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"`
  2579  	Memo                         string       `protobuf:"bytes,2,opt,name=memo,proto3" json:"memo,omitempty"`
  2580  	TimeoutHeight                int64        `protobuf:"varint,3,opt,name=timeout_height,json=timeoutHeight,proto3" json:"timeout_height,omitempty"`
  2581  	SomeNewField                 uint64       `protobuf:"varint,4,opt,name=some_new_field,json=someNewField,proto3" json:"some_new_field,omitempty"`
  2582  	SomeNewFieldNonCriticalField string       `protobuf:"bytes,1050,opt,name=some_new_field_non_critical_field,json=someNewFieldNonCriticalField,proto3" json:"some_new_field_non_critical_field,omitempty"`
  2583  	ExtensionOptions             []*types.Any `protobuf:"bytes,1023,rep,name=extension_options,json=extensionOptions,proto3" json:"extension_options,omitempty"`
  2584  	NonCriticalExtensionOptions  []*types.Any `protobuf:"bytes,2047,rep,name=non_critical_extension_options,json=nonCriticalExtensionOptions,proto3" json:"non_critical_extension_options,omitempty"`
  2585  }
  2586  
  2587  func (m *TestUpdatedTxBody) Reset()         { *m = TestUpdatedTxBody{} }
  2588  func (m *TestUpdatedTxBody) String() string { return proto.CompactTextString(m) }
  2589  func (*TestUpdatedTxBody) ProtoMessage()    {}
  2590  func (*TestUpdatedTxBody) Descriptor() ([]byte, []int) {
  2591  	return fileDescriptor_fe4560133be9209a, []int{21}
  2592  }
  2593  func (m *TestUpdatedTxBody) XXX_Unmarshal(b []byte) error {
  2594  	return m.Unmarshal(b)
  2595  }
  2596  func (m *TestUpdatedTxBody) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2597  	if deterministic {
  2598  		return xxx_messageInfo_TestUpdatedTxBody.Marshal(b, m, deterministic)
  2599  	} else {
  2600  		b = b[:cap(b)]
  2601  		n, err := m.MarshalToSizedBuffer(b)
  2602  		if err != nil {
  2603  			return nil, err
  2604  		}
  2605  		return b[:n], nil
  2606  	}
  2607  }
  2608  func (m *TestUpdatedTxBody) XXX_Merge(src proto.Message) {
  2609  	xxx_messageInfo_TestUpdatedTxBody.Merge(m, src)
  2610  }
  2611  func (m *TestUpdatedTxBody) XXX_Size() int {
  2612  	return m.Size()
  2613  }
  2614  func (m *TestUpdatedTxBody) XXX_DiscardUnknown() {
  2615  	xxx_messageInfo_TestUpdatedTxBody.DiscardUnknown(m)
  2616  }
  2617  
  2618  var xxx_messageInfo_TestUpdatedTxBody proto.InternalMessageInfo
  2619  
  2620  func (m *TestUpdatedTxBody) GetMessages() []*types.Any {
  2621  	if m != nil {
  2622  		return m.Messages
  2623  	}
  2624  	return nil
  2625  }
  2626  
  2627  func (m *TestUpdatedTxBody) GetMemo() string {
  2628  	if m != nil {
  2629  		return m.Memo
  2630  	}
  2631  	return ""
  2632  }
  2633  
  2634  func (m *TestUpdatedTxBody) GetTimeoutHeight() int64 {
  2635  	if m != nil {
  2636  		return m.TimeoutHeight
  2637  	}
  2638  	return 0
  2639  }
  2640  
  2641  func (m *TestUpdatedTxBody) GetSomeNewField() uint64 {
  2642  	if m != nil {
  2643  		return m.SomeNewField
  2644  	}
  2645  	return 0
  2646  }
  2647  
  2648  func (m *TestUpdatedTxBody) GetSomeNewFieldNonCriticalField() string {
  2649  	if m != nil {
  2650  		return m.SomeNewFieldNonCriticalField
  2651  	}
  2652  	return ""
  2653  }
  2654  
  2655  func (m *TestUpdatedTxBody) GetExtensionOptions() []*types.Any {
  2656  	if m != nil {
  2657  		return m.ExtensionOptions
  2658  	}
  2659  	return nil
  2660  }
  2661  
  2662  func (m *TestUpdatedTxBody) GetNonCriticalExtensionOptions() []*types.Any {
  2663  	if m != nil {
  2664  		return m.NonCriticalExtensionOptions
  2665  	}
  2666  	return nil
  2667  }
  2668  
  2669  type TestUpdatedAuthInfo struct {
  2670  	SignerInfos   []*tx.SignerInfo `protobuf:"bytes,1,rep,name=signer_infos,json=signerInfos,proto3" json:"signer_infos,omitempty"`
  2671  	Fee           *tx.Fee          `protobuf:"bytes,2,opt,name=fee,proto3" json:"fee,omitempty"`
  2672  	NewField_3    []byte           `protobuf:"bytes,3,opt,name=new_field_3,json=newField3,proto3" json:"new_field_3,omitempty"`
  2673  	NewField_1024 []byte           `protobuf:"bytes,1024,opt,name=new_field_1024,json=newField1024,proto3" json:"new_field_1024,omitempty"`
  2674  }
  2675  
  2676  func (m *TestUpdatedAuthInfo) Reset()         { *m = TestUpdatedAuthInfo{} }
  2677  func (m *TestUpdatedAuthInfo) String() string { return proto.CompactTextString(m) }
  2678  func (*TestUpdatedAuthInfo) ProtoMessage()    {}
  2679  func (*TestUpdatedAuthInfo) Descriptor() ([]byte, []int) {
  2680  	return fileDescriptor_fe4560133be9209a, []int{22}
  2681  }
  2682  func (m *TestUpdatedAuthInfo) XXX_Unmarshal(b []byte) error {
  2683  	return m.Unmarshal(b)
  2684  }
  2685  func (m *TestUpdatedAuthInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2686  	if deterministic {
  2687  		return xxx_messageInfo_TestUpdatedAuthInfo.Marshal(b, m, deterministic)
  2688  	} else {
  2689  		b = b[:cap(b)]
  2690  		n, err := m.MarshalToSizedBuffer(b)
  2691  		if err != nil {
  2692  			return nil, err
  2693  		}
  2694  		return b[:n], nil
  2695  	}
  2696  }
  2697  func (m *TestUpdatedAuthInfo) XXX_Merge(src proto.Message) {
  2698  	xxx_messageInfo_TestUpdatedAuthInfo.Merge(m, src)
  2699  }
  2700  func (m *TestUpdatedAuthInfo) XXX_Size() int {
  2701  	return m.Size()
  2702  }
  2703  func (m *TestUpdatedAuthInfo) XXX_DiscardUnknown() {
  2704  	xxx_messageInfo_TestUpdatedAuthInfo.DiscardUnknown(m)
  2705  }
  2706  
  2707  var xxx_messageInfo_TestUpdatedAuthInfo proto.InternalMessageInfo
  2708  
  2709  func (m *TestUpdatedAuthInfo) GetSignerInfos() []*tx.SignerInfo {
  2710  	if m != nil {
  2711  		return m.SignerInfos
  2712  	}
  2713  	return nil
  2714  }
  2715  
  2716  func (m *TestUpdatedAuthInfo) GetFee() *tx.Fee {
  2717  	if m != nil {
  2718  		return m.Fee
  2719  	}
  2720  	return nil
  2721  }
  2722  
  2723  func (m *TestUpdatedAuthInfo) GetNewField_3() []byte {
  2724  	if m != nil {
  2725  		return m.NewField_3
  2726  	}
  2727  	return nil
  2728  }
  2729  
  2730  func (m *TestUpdatedAuthInfo) GetNewField_1024() []byte {
  2731  	if m != nil {
  2732  		return m.NewField_1024
  2733  	}
  2734  	return nil
  2735  }
  2736  
  2737  type TestRepeatedUints struct {
  2738  	Nums []uint64 `protobuf:"varint,1,rep,packed,name=nums,proto3" json:"nums,omitempty"`
  2739  }
  2740  
  2741  func (m *TestRepeatedUints) Reset()         { *m = TestRepeatedUints{} }
  2742  func (m *TestRepeatedUints) String() string { return proto.CompactTextString(m) }
  2743  func (*TestRepeatedUints) ProtoMessage()    {}
  2744  func (*TestRepeatedUints) Descriptor() ([]byte, []int) {
  2745  	return fileDescriptor_fe4560133be9209a, []int{23}
  2746  }
  2747  func (m *TestRepeatedUints) XXX_Unmarshal(b []byte) error {
  2748  	return m.Unmarshal(b)
  2749  }
  2750  func (m *TestRepeatedUints) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2751  	if deterministic {
  2752  		return xxx_messageInfo_TestRepeatedUints.Marshal(b, m, deterministic)
  2753  	} else {
  2754  		b = b[:cap(b)]
  2755  		n, err := m.MarshalToSizedBuffer(b)
  2756  		if err != nil {
  2757  			return nil, err
  2758  		}
  2759  		return b[:n], nil
  2760  	}
  2761  }
  2762  func (m *TestRepeatedUints) XXX_Merge(src proto.Message) {
  2763  	xxx_messageInfo_TestRepeatedUints.Merge(m, src)
  2764  }
  2765  func (m *TestRepeatedUints) XXX_Size() int {
  2766  	return m.Size()
  2767  }
  2768  func (m *TestRepeatedUints) XXX_DiscardUnknown() {
  2769  	xxx_messageInfo_TestRepeatedUints.DiscardUnknown(m)
  2770  }
  2771  
  2772  var xxx_messageInfo_TestRepeatedUints proto.InternalMessageInfo
  2773  
  2774  func (m *TestRepeatedUints) GetNums() []uint64 {
  2775  	if m != nil {
  2776  		return m.Nums
  2777  	}
  2778  	return nil
  2779  }
  2780  
  2781  func init() {
  2782  	proto.RegisterEnum("testpb.Customer2_City", Customer2_City_name, Customer2_City_value)
  2783  	proto.RegisterType((*Customer1)(nil), "testpb.Customer1")
  2784  	proto.RegisterType((*Customer2)(nil), "testpb.Customer2")
  2785  	proto.RegisterType((*Nested4A)(nil), "testpb.Nested4A")
  2786  	proto.RegisterType((*Nested3A)(nil), "testpb.Nested3A")
  2787  	proto.RegisterMapType((map[int64]*Nested4A)(nil), "testpb.Nested3A.IndexEntry")
  2788  	proto.RegisterType((*Nested2A)(nil), "testpb.Nested2A")
  2789  	proto.RegisterType((*Nested1A)(nil), "testpb.Nested1A")
  2790  	proto.RegisterType((*Nested4B)(nil), "testpb.Nested4B")
  2791  	proto.RegisterType((*Nested3B)(nil), "testpb.Nested3B")
  2792  	proto.RegisterType((*Nested2B)(nil), "testpb.Nested2B")
  2793  	proto.RegisterType((*Nested1B)(nil), "testpb.Nested1B")
  2794  	proto.RegisterType((*Customer3)(nil), "testpb.Customer3")
  2795  	proto.RegisterType((*TestVersion1)(nil), "testpb.TestVersion1")
  2796  	proto.RegisterType((*TestVersion2)(nil), "testpb.TestVersion2")
  2797  	proto.RegisterType((*TestVersion3)(nil), "testpb.TestVersion3")
  2798  	proto.RegisterType((*TestVersion3LoneOneOfValue)(nil), "testpb.TestVersion3LoneOneOfValue")
  2799  	proto.RegisterType((*TestVersion3LoneNesting)(nil), "testpb.TestVersion3LoneNesting")
  2800  	proto.RegisterType((*TestVersion3LoneNesting_Inner1)(nil), "testpb.TestVersion3LoneNesting.Inner1")
  2801  	proto.RegisterType((*TestVersion3LoneNesting_Inner1_InnerInner)(nil), "testpb.TestVersion3LoneNesting.Inner1.InnerInner")
  2802  	proto.RegisterType((*TestVersion3LoneNesting_Inner2)(nil), "testpb.TestVersion3LoneNesting.Inner2")
  2803  	proto.RegisterType((*TestVersion3LoneNesting_Inner2_InnerInner)(nil), "testpb.TestVersion3LoneNesting.Inner2.InnerInner")
  2804  	proto.RegisterType((*TestVersion4LoneNesting)(nil), "testpb.TestVersion4LoneNesting")
  2805  	proto.RegisterType((*TestVersion4LoneNesting_Inner1)(nil), "testpb.TestVersion4LoneNesting.Inner1")
  2806  	proto.RegisterType((*TestVersion4LoneNesting_Inner1_InnerInner)(nil), "testpb.TestVersion4LoneNesting.Inner1.InnerInner")
  2807  	proto.RegisterType((*TestVersion4LoneNesting_Inner2)(nil), "testpb.TestVersion4LoneNesting.Inner2")
  2808  	proto.RegisterType((*TestVersion4LoneNesting_Inner2_InnerInner)(nil), "testpb.TestVersion4LoneNesting.Inner2.InnerInner")
  2809  	proto.RegisterType((*TestVersionFD1)(nil), "testpb.TestVersionFD1")
  2810  	proto.RegisterType((*TestVersionFD1WithExtraAny)(nil), "testpb.TestVersionFD1WithExtraAny")
  2811  	proto.RegisterType((*AnyWithExtra)(nil), "testpb.AnyWithExtra")
  2812  	proto.RegisterType((*TestUpdatedTxRaw)(nil), "testpb.TestUpdatedTxRaw")
  2813  	proto.RegisterType((*TestUpdatedTxBody)(nil), "testpb.TestUpdatedTxBody")
  2814  	proto.RegisterType((*TestUpdatedAuthInfo)(nil), "testpb.TestUpdatedAuthInfo")
  2815  	proto.RegisterType((*TestRepeatedUints)(nil), "testpb.TestRepeatedUints")
  2816  }
  2817  
  2818  func init() { proto.RegisterFile("testpb/unknonwnproto.proto", fileDescriptor_fe4560133be9209a) }
  2819  
  2820  var fileDescriptor_fe4560133be9209a = []byte{
  2821  	// 1641 bytes of a gzipped FileDescriptorProto
  2822  	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x58, 0x4f, 0x8f, 0x1a, 0xc9,
  2823  	0x15, 0x9f, 0xa2, 0x81, 0x81, 0x37, 0x18, 0xe3, 0xca, 0x68, 0xd3, 0x8b, 0xd7, 0x98, 0xb4, 0x76,
  2824  	0x1d, 0x12, 0xc9, 0x60, 0x1a, 0x56, 0x8a, 0xf6, 0x10, 0x2d, 0xd8, 0x9e, 0x1d, 0x47, 0xce, 0x38,
  2825  	0xea, 0x78, 0x9d, 0x68, 0x2f, 0xa8, 0xe9, 0x2e, 0xa0, 0x35, 0x50, 0x35, 0xe9, 0xaa, 0xf6, 0xc0,
  2826  	0x6d, 0x6f, 0x7b, 0xdd, 0x5b, 0xa4, 0x7c, 0x81, 0x9c, 0xa2, 0xfd, 0x0a, 0xb9, 0xc5, 0xb7, 0x58,
  2827  	0xca, 0x25, 0x27, 0x2b, 0xb2, 0x0f, 0x51, 0x4e, 0x39, 0xe5, 0x9c, 0xa8, 0xaa, 0xff, 0xd0, 0x78,
  2828  	0x60, 0x96, 0x99, 0x4d, 0xe2, 0xb5, 0xb4, 0x17, 0xa8, 0x7a, 0xf5, 0xab, 0x57, 0xef, 0xfd, 0xde,
  2829  	0x9f, 0xee, 0x6a, 0xa8, 0x0a, 0xc2, 0xc5, 0xc9, 0xb0, 0x15, 0xd0, 0x63, 0xca, 0xe8, 0x29, 0x3d,
  2830  	0xf1, 0x99, 0x60, 0x4d, 0xf5, 0x8b, 0xf3, 0xe1, 0x5a, 0x75, 0x7f, 0xcc, 0xc6, 0x4c, 0x89, 0x5a,
  2831  	0x72, 0x14, 0xae, 0x56, 0xdf, 0x1d, 0x33, 0x36, 0x9e, 0x92, 0x96, 0x9a, 0x0d, 0x83, 0x51, 0xcb,
  2832  	0xa6, 0x8b, 0x68, 0xa9, 0xea, 0x30, 0x3e, 0x63, 0xbc, 0x25, 0xe6, 0xad, 0xa7, 0xed, 0x21, 0x11,
  2833  	0x76, 0xbb, 0x25, 0xe6, 0xe1, 0x9a, 0x21, 0xa0, 0x78, 0x37, 0xe0, 0x82, 0xcd, 0x88, 0xdf, 0xc6,
  2834  	0x65, 0xc8, 0x78, 0xae, 0x8e, 0xea, 0xa8, 0x91, 0xb3, 0x32, 0x9e, 0x8b, 0x31, 0x64, 0xa9, 0x3d,
  2835  	0x23, 0x7a, 0xa6, 0x8e, 0x1a, 0x45, 0x4b, 0x8d, 0xf1, 0x8f, 0xa0, 0xc2, 0x83, 0x21, 0x77, 0x7c,
  2836  	0xef, 0x44, 0x78, 0x8c, 0x0e, 0x46, 0x84, 0xe8, 0x5a, 0x1d, 0x35, 0x32, 0xd6, 0xd5, 0xb4, 0xfc,
  2837  	0x80, 0x10, 0xac, 0xc3, 0xee, 0x89, 0xbd, 0x98, 0x11, 0x2a, 0xf4, 0x5d, 0xa5, 0x21, 0x9e, 0x1a,
  2838  	0x5f, 0x65, 0x96, 0xc7, 0x9a, 0x67, 0x8e, 0xad, 0x42, 0xc1, 0xa3, 0x6e, 0xc0, 0x85, 0xbf, 0x50,
  2839  	0x47, 0xe7, 0xac, 0x64, 0x9e, 0x98, 0xa4, 0xa5, 0x4c, 0xda, 0x87, 0xdc, 0x88, 0x9c, 0x12, 0x5f,
  2840  	0xcf, 0x2a, 0x3b, 0xc2, 0x09, 0xbe, 0x0e, 0x05, 0x9f, 0x70, 0xe2, 0x3f, 0x25, 0xae, 0xfe, 0xdb,
  2841  	0x42, 0x1d, 0x35, 0x34, 0x2b, 0x11, 0xe0, 0x1f, 0x43, 0xd6, 0xf1, 0xc4, 0x42, 0xcf, 0xd7, 0x51,
  2842  	0xa3, 0x6c, 0xbe, 0xd3, 0x0c, 0xa9, 0x6d, 0x26, 0x36, 0x35, 0xef, 0x7a, 0x62, 0x61, 0x29, 0x0c,
  2843  	0xfe, 0x08, 0xae, 0xcc, 0x3c, 0xee, 0x90, 0xe9, 0xd4, 0xa6, 0x84, 0x05, 0x5c, 0x87, 0x3a, 0x6a,
  2844  	0xec, 0x99, 0xfb, 0xcd, 0x90, 0xf1, 0x66, 0xcc, 0x78, 0xb3, 0x47, 0x17, 0xd6, 0x2a, 0xd4, 0xf8,
  2845  	0x04, 0xb2, 0x52, 0x13, 0x2e, 0x40, 0xf6, 0xa1, 0xcd, 0x78, 0x65, 0x07, 0x97, 0x01, 0x1e, 0x32,
  2846  	0xde, 0xa3, 0x63, 0x32, 0x25, 0xbc, 0x82, 0x70, 0x09, 0x0a, 0xbf, 0xb0, 0xa7, 0xac, 0x37, 0x15,
  2847  	0xac, 0x92, 0xc1, 0x00, 0xf9, 0x9f, 0x33, 0xee, 0xb0, 0xd3, 0x8a, 0x86, 0xf7, 0x60, 0xf7, 0xc8,
  2848  	0xf6, 0x7c, 0x36, 0xf4, 0x2a, 0x59, 0xa3, 0x09, 0x85, 0x23, 0xc2, 0x05, 0x71, 0xbb, 0xbd, 0x6d,
  2849  	0xc2, 0x64, 0xfc, 0x19, 0xc5, 0x1b, 0x3a, 0x5b, 0x6d, 0xc0, 0x75, 0xc8, 0xd8, 0x5d, 0x3d, 0x5b,
  2850  	0xd7, 0x1a, 0x7b, 0x66, 0x25, 0xe6, 0x23, 0x3e, 0xd2, 0xca, 0xd8, 0x5d, 0xdc, 0x86, 0x9c, 0x47,
  2851  	0x5d, 0x32, 0xd7, 0x73, 0x0a, 0x74, 0x7d, 0x15, 0xd4, 0xe9, 0x35, 0x1f, 0xc8, 0xd5, 0xfb, 0x54,
  2852  	0xf8, 0x0b, 0x2b, 0x44, 0x56, 0x7f, 0x06, 0xb0, 0x14, 0xe2, 0x0a, 0x68, 0xc7, 0x64, 0xa1, 0xec,
  2853  	0xd0, 0x2c, 0x39, 0xc4, 0xb7, 0x20, 0xf7, 0xd4, 0x9e, 0x06, 0xa1, 0x25, 0xeb, 0xce, 0x0d, 0x97,
  2854  	0x3f, 0xca, 0xfc, 0x04, 0x19, 0xbf, 0x8e, 0x1d, 0x32, 0xb7, 0x73, 0xa8, 0x01, 0x79, 0xaa, 0xf0,
  2855  	0x2a, 0x57, 0xce, 0x28, 0xef, 0xf4, 0xac, 0x68, 0xdd, 0xb8, 0x17, 0x6b, 0x6e, 0x9f, 0xd5, 0xbc,
  2856  	0xd4, 0xb2, 0xd6, 0x44, 0x73, 0xa9, 0xe5, 0xe3, 0x24, 0x42, 0xfd, 0x33, 0x5a, 0x2a, 0xa0, 0xd9,
  2857  	0x63, 0x12, 0x25, 0xb3, 0x1c, 0xae, 0xcb, 0x63, 0x63, 0x98, 0x84, 0xec, 0x92, 0x1a, 0x64, 0x10,
  2858  	0x87, 0x9b, 0x82, 0xd8, 0xb7, 0x32, 0xc3, 0xae, 0x31, 0x4d, 0x58, 0x5c, 0x7b, 0x86, 0xac, 0x66,
  2859  	0x79, 0x06, 0xb2, 0xe4, 0xf0, 0x6b, 0x39, 0xec, 0xc7, 0xde, 0xcb, 0x1a, 0xf4, 0x59, 0x20, 0x88,
  2860  	0xaa, 0xc1, 0xa2, 0x15, 0x4e, 0x8c, 0x27, 0x09, 0xb3, 0xfd, 0x0b, 0x33, 0xbb, 0xd4, 0x1d, 0xf9,
  2861  	0xae, 0x25, 0xbe, 0x1b, 0x9f, 0xa7, 0xfa, 0x47, 0x67, 0xab, 0x6c, 0x28, 0x43, 0x86, 0x8f, 0xa2,
  2862  	0x46, 0x95, 0xe1, 0x23, 0xfc, 0x1e, 0x14, 0x79, 0xe0, 0x3b, 0x13, 0xdb, 0x1f, 0x93, 0xa8, 0x6f,
  2863  	0x2c, 0x05, 0xb8, 0x0e, 0x7b, 0x2e, 0xe1, 0xc2, 0xa3, 0xb6, 0xec, 0x65, 0x7a, 0x4e, 0x29, 0x4a,
  2864  	0x8b, 0xf0, 0x2d, 0x28, 0x3b, 0x3e, 0x71, 0x3d, 0x31, 0x70, 0x6c, 0xdf, 0x1d, 0x50, 0x16, 0xb6,
  2865  	0xb8, 0xc3, 0x1d, 0xab, 0x14, 0xca, 0xef, 0xda, 0xbe, 0x7b, 0xc4, 0xf0, 0x0d, 0x28, 0x3a, 0x13,
  2866  	0xf2, 0x9b, 0x80, 0x48, 0x48, 0x21, 0x82, 0x14, 0x42, 0xd1, 0x11, 0xc3, 0xb7, 0xa1, 0xc0, 0x7c,
  2867  	0x6f, 0xec, 0x51, 0x7b, 0xaa, 0x17, 0x15, 0x0d, 0xd7, 0x5e, 0xef, 0x45, 0x6d, 0x2b, 0x81, 0xf4,
  2868  	0x8b, 0x49, 0x47, 0x35, 0x5e, 0x64, 0xa0, 0xf4, 0x98, 0x70, 0xf1, 0x84, 0xf8, 0xdc, 0x63, 0xb4,
  2869  	0x8d, 0x4b, 0x80, 0xe6, 0x51, 0x6d, 0xa1, 0x39, 0x36, 0x00, 0xd9, 0x11, 0xb1, 0xfb, 0xb1, 0xc6,
  2870  	0x34, 0xdc, 0x42, 0xb6, 0xc4, 0x0c, 0xa3, 0xc0, 0x6e, 0xc0, 0x0c, 0x25, 0xc6, 0x89, 0x12, 0x6a,
  2871  	0x03, 0xc6, 0xc1, 0x0d, 0x40, 0x6e, 0xd4, 0x14, 0xd6, 0x62, 0xfa, 0xd9, 0x67, 0x2f, 0x6e, 0xee,
  2872  	0x58, 0xc8, 0xc5, 0x65, 0x40, 0x44, 0xf5, 0xdc, 0xdc, 0xe1, 0x8e, 0x85, 0x08, 0x7e, 0x1f, 0xd0,
  2873  	0x48, 0x11, 0xb7, 0x61, 0xa7, 0x44, 0x8d, 0xa4, 0x0d, 0x63, 0xc5, 0xdd, 0xa6, 0xa6, 0x8b, 0xc6,
  2874  	0x12, 0x33, 0xd1, 0x8b, 0xe7, 0xd9, 0x39, 0xc1, 0x1f, 0x00, 0x3a, 0xd6, 0x4b, 0x1b, 0x58, 0xee,
  2875  	0x67, 0x9f, 0xbf, 0xb8, 0x89, 0x2c, 0x74, 0xdc, 0xcf, 0x81, 0xc6, 0x83, 0x99, 0xf1, 0xaf, 0x55,
  2876  	0x82, 0xcd, 0x8b, 0x11, 0x6c, 0x6e, 0x41, 0xb0, 0xb9, 0x05, 0xc1, 0xa6, 0x24, 0xd8, 0x38, 0x9f,
  2877  	0x60, 0xf3, 0x12, 0xd4, 0x9a, 0x6f, 0x82, 0x5a, 0x7c, 0x1d, 0x8a, 0x94, 0x9c, 0x0e, 0x46, 0x1e,
  2878  	0x99, 0xba, 0xfa, 0xbb, 0x75, 0xd4, 0xc8, 0x5a, 0x05, 0x4a, 0x4e, 0x0f, 0xe4, 0x3c, 0xe6, 0xfd,
  2879  	0x0b, 0x6d, 0x85, 0xf7, 0xce, 0xc5, 0x78, 0xef, 0x6c, 0xc1, 0x7b, 0x67, 0x0b, 0xde, 0x3b, 0x5b,
  2880  	0xf0, 0xde, 0xb9, 0x04, 0xef, 0x9d, 0x37, 0xc2, 0xfb, 0x6d, 0xc0, 0x94, 0xd1, 0x81, 0xe3, 0x7b,
  2881  	0xc2, 0x73, 0xec, 0x69, 0x14, 0x80, 0x2f, 0x54, 0x3f, 0xb2, 0x2a, 0x94, 0xd1, 0xbb, 0xd1, 0xca,
  2882  	0x4a, 0x24, 0xfe, 0x99, 0x81, 0x6a, 0xda, 0xf4, 0x87, 0x8c, 0x92, 0x47, 0x94, 0x3c, 0x1a, 0x3d,
  2883  	0x91, 0x0f, 0xe5, 0xb7, 0x2c, 0x2e, 0x6f, 0x05, 0xe3, 0x7f, 0xcf, 0xc3, 0xf7, 0x5f, 0x67, 0xfc,
  2884  	0x48, 0x3d, 0x75, 0xc6, 0xdf, 0x72, 0xba, 0x5b, 0xcb, 0xb4, 0xbf, 0xb9, 0x0e, 0x93, 0xf2, 0xe4,
  2885  	0x2d, 0xa8, 0x00, 0xfc, 0x53, 0xc8, 0x7b, 0x94, 0x12, 0xbf, 0xad, 0x97, 0x95, 0xea, 0x5b, 0x5f,
  2886  	0xe3, 0x53, 0xf3, 0x81, 0x42, 0x5b, 0xd1, 0xae, 0x64, 0xbf, 0xa9, 0x5f, 0xbd, 0xc0, 0x7e, 0x33,
  2887  	0xda, 0x6f, 0x56, 0x7f, 0x8f, 0x20, 0x1f, 0xaa, 0x4c, 0xbd, 0xdd, 0x68, 0x1b, 0xdf, 0x6e, 0x3e,
  2888  	0x91, 0xaf, 0xe6, 0x94, 0xf8, 0x51, 0xb4, 0xdb, 0xdb, 0x59, 0x1b, 0xfe, 0xa9, 0x1f, 0x2b, 0xdc,
  2889  	0x5f, 0xbd, 0x23, 0x5f, 0xd8, 0x63, 0x61, 0xea, 0xe8, 0x62, 0x7c, 0xb4, 0xba, 0x35, 0x45, 0x47,
  2890  	0xcb, 0x71, 0xf5, 0x0f, 0xb1, 0xa5, 0xe6, 0x19, 0xb8, 0x0e, 0xbb, 0x0e, 0x0b, 0x68, 0x7c, 0x8d,
  2891  	0x2b, 0x5a, 0xf1, 0xf4, 0x72, 0xf6, 0x9a, 0xff, 0x0d, 0x7b, 0xe3, 0x4a, 0xfb, 0xc7, 0x6a, 0xa5,
  2892  	0x75, 0xbf, 0xab, 0xb4, 0x6f, 0x71, 0xa5, 0x75, 0xbf, 0x61, 0xa5, 0x75, 0xff, 0xaf, 0x95, 0xd6,
  2893  	0xfd, 0x46, 0x95, 0xa6, 0x6d, 0xac, 0xb4, 0xaf, 0xfe, 0x47, 0x95, 0xd6, 0xdd, 0xaa, 0xd2, 0xcc,
  2894  	0x73, 0x2b, 0x6d, 0x3f, 0x7d, 0x91, 0xd7, 0xa2, 0x6b, 0x7b, 0x5c, 0x6b, 0x7f, 0x42, 0x50, 0x4e,
  2895  	0x9d, 0x77, 0x70, 0xef, 0x32, 0x97, 0x95, 0x37, 0x7a, 0x75, 0x88, 0x3d, 0xf9, 0x0b, 0x5a, 0x79,
  2896  	0x23, 0x3a, 0xb8, 0xd7, 0xfe, 0x95, 0x27, 0x26, 0xf7, 0xe7, 0xc2, 0xb7, 0x7b, 0x74, 0xf1, 0x66,
  2897  	0xbc, 0x8a, 0x50, 0x3d, 0xba, 0x48, 0x6c, 0xb9, 0xa0, 0x57, 0x8f, 0xa1, 0x94, 0xde, 0x2d, 0xef,
  2898  	0x73, 0xb6, 0x72, 0x63, 0x03, 0x69, 0x71, 0xad, 0xdb, 0xd2, 0xe1, 0xb0, 0xef, 0x69, 0xb2, 0xc3,
  2899  	0x95, 0xc2, 0x0e, 0xa7, 0x66, 0x8e, 0xf1, 0x47, 0x04, 0x15, 0x79, 0xe0, 0xa7, 0x27, 0xae, 0x2d,
  2900  	0x88, 0xfb, 0x78, 0x6e, 0xd9, 0xa7, 0xf8, 0x06, 0xc0, 0x90, 0xb9, 0x8b, 0xc1, 0x70, 0x21, 0x08,
  2901  	0x57, 0x67, 0x94, 0xac, 0xa2, 0x94, 0xf4, 0xa5, 0x00, 0xdf, 0x82, 0xab, 0x76, 0x20, 0x26, 0x03,
  2902  	0x8f, 0x8e, 0x58, 0x84, 0xc9, 0x28, 0xcc, 0x15, 0x29, 0x7e, 0x40, 0x47, 0x2c, 0xc4, 0xd5, 0x00,
  2903  	0xb8, 0x37, 0xa6, 0xb6, 0x08, 0x7c, 0xc2, 0x75, 0xad, 0xae, 0x35, 0x4a, 0x56, 0x4a, 0x82, 0x6b,
  2904  	0xb0, 0x97, 0xdc, 0x33, 0x06, 0x1f, 0xaa, 0xfb, 0x7b, 0xc9, 0x2a, 0xc6, 0x37, 0x8d, 0x0f, 0xf1,
  2905  	0x07, 0x50, 0x5e, 0xae, 0xb7, 0xef, 0x98, 0x5d, 0xfd, 0xf3, 0x82, 0xc2, 0x94, 0x62, 0x8c, 0x14,
  2906  	0x1a, 0x5f, 0x6a, 0x70, 0x6d, 0xc5, 0x85, 0x3e, 0x73, 0x17, 0xf8, 0x0e, 0x14, 0x66, 0x84, 0x73,
  2907  	0x7b, 0xac, 0x3c, 0xd0, 0x36, 0xa6, 0x56, 0x82, 0x92, 0xd5, 0x3c, 0x23, 0x33, 0x16, 0x57, 0xb3,
  2908  	0x1c, 0x4b, 0x13, 0x84, 0x37, 0x23, 0x2c, 0x10, 0x83, 0x09, 0xf1, 0xc6, 0x13, 0x11, 0xf1, 0x78,
  2909  	0x25, 0x92, 0x1e, 0x2a, 0x21, 0x7e, 0x1f, 0xca, 0x9c, 0xcd, 0xc8, 0x60, 0x79, 0x6d, 0xca, 0xaa,
  2910  	0x6b, 0x53, 0x49, 0x4a, 0x8f, 0x22, 0x63, 0xf1, 0x21, 0xfc, 0x60, 0x15, 0x35, 0x58, 0xd3, 0x82,
  2911  	0x7f, 0x17, 0xb6, 0xe0, 0xf7, 0xd2, 0x3b, 0x8f, 0x5e, 0x6f, 0xc7, 0x7d, 0xb8, 0x46, 0xe6, 0x82,
  2912  	0x50, 0x99, 0x23, 0x03, 0xa6, 0x3e, 0xe5, 0x72, 0xfd, 0xdf, 0xbb, 0xe7, 0xb8, 0x59, 0x49, 0xf0,
  2913  	0x8f, 0x42, 0x38, 0xfe, 0x0c, 0x6a, 0x2b, 0xc7, 0xaf, 0x51, 0x78, 0xf5, 0x1c, 0x85, 0xd7, 0x53,
  2914  	0xcf, 0x88, 0xfb, 0xaf, 0xe9, 0x36, 0x9e, 0x21, 0xf8, 0x5e, 0x2a, 0x24, 0xbd, 0x28, 0x2d, 0xf0,
  2915  	0xc7, 0x50, 0x92, 0xf1, 0x27, 0xbe, 0xca, 0x9d, 0x38, 0x30, 0x37, 0x9a, 0xe1, 0xa7, 0xef, 0xa6,
  2916  	0x98, 0x37, 0xa3, 0x4f, 0xdf, 0xcd, 0x5f, 0x2a, 0x98, 0xdc, 0x64, 0xed, 0xf1, 0x64, 0xcc, 0x71,
  2917  	0x63, 0xf9, 0xf5, 0x6b, 0xcf, 0x7c, 0x67, 0xcd, 0xc6, 0x03, 0x42, 0xc2, 0xaf, 0x62, 0x2b, 0xd9,
  2918  	0xd5, 0x51, 0x71, 0x4b, 0x65, 0x57, 0x67, 0xdb, 0xec, 0xfa, 0x61, 0x98, 0x5c, 0x16, 0x39, 0x21,
  2919  	0xd2, 0x95, 0x4f, 0x3d, 0x2a, 0x54, 0xaa, 0xd0, 0x60, 0x16, 0xda, 0x9f, 0xb5, 0xd4, 0xb8, 0x7f,
  2920  	0xf8, 0xec, 0x65, 0x0d, 0x3d, 0x7f, 0x59, 0x43, 0x7f, 0x7b, 0x59, 0x43, 0x5f, 0xbe, 0xaa, 0xed,
  2921  	0x3c, 0x7f, 0x55, 0xdb, 0xf9, 0xeb, 0xab, 0xda, 0xce, 0x67, 0xcd, 0xb1, 0x27, 0x26, 0xc1, 0xb0,
  2922  	0xe9, 0xb0, 0x59, 0x2b, 0xfa, 0xc8, 0x1f, 0xfe, 0xdd, 0xe6, 0xee, 0x71, 0x4b, 0x56, 0x7d, 0x20,
  2923  	0xbc, 0xa9, 0x1a, 0xb8, 0xb6, 0xb0, 0x87, 0x79, 0x45, 0x74, 0xe7, 0x3f, 0x01, 0x00, 0x00, 0xff,
  2924  	0xff, 0x3a, 0xea, 0x0d, 0xa7, 0x67, 0x18, 0x00, 0x00,
  2925  }
  2926  
  2927  func (m *Customer1) Marshal() (dAtA []byte, err error) {
  2928  	size := m.Size()
  2929  	dAtA = make([]byte, size)
  2930  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2931  	if err != nil {
  2932  		return nil, err
  2933  	}
  2934  	return dAtA[:n], nil
  2935  }
  2936  
  2937  func (m *Customer1) MarshalTo(dAtA []byte) (int, error) {
  2938  	size := m.Size()
  2939  	return m.MarshalToSizedBuffer(dAtA[:size])
  2940  }
  2941  
  2942  func (m *Customer1) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2943  	i := len(dAtA)
  2944  	_ = i
  2945  	var l int
  2946  	_ = l
  2947  	if len(m.Payment) > 0 {
  2948  		i -= len(m.Payment)
  2949  		copy(dAtA[i:], m.Payment)
  2950  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.Payment)))
  2951  		i--
  2952  		dAtA[i] = 0x3a
  2953  	}
  2954  	if m.SubscriptionFee != 0 {
  2955  		i -= 4
  2956  		encoding_binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.SubscriptionFee))))
  2957  		i--
  2958  		dAtA[i] = 0x1d
  2959  	}
  2960  	if len(m.Name) > 0 {
  2961  		i -= len(m.Name)
  2962  		copy(dAtA[i:], m.Name)
  2963  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.Name)))
  2964  		i--
  2965  		dAtA[i] = 0x12
  2966  	}
  2967  	if m.Id != 0 {
  2968  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.Id))
  2969  		i--
  2970  		dAtA[i] = 0x8
  2971  	}
  2972  	return len(dAtA) - i, nil
  2973  }
  2974  
  2975  func (m *Customer2) Marshal() (dAtA []byte, err error) {
  2976  	size := m.Size()
  2977  	dAtA = make([]byte, size)
  2978  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2979  	if err != nil {
  2980  		return nil, err
  2981  	}
  2982  	return dAtA[:n], nil
  2983  }
  2984  
  2985  func (m *Customer2) MarshalTo(dAtA []byte) (int, error) {
  2986  	size := m.Size()
  2987  	return m.MarshalToSizedBuffer(dAtA[:size])
  2988  }
  2989  
  2990  func (m *Customer2) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2991  	i := len(dAtA)
  2992  	_ = i
  2993  	var l int
  2994  	_ = l
  2995  	if m.Reserved != 0 {
  2996  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.Reserved))
  2997  		i--
  2998  		dAtA[i] = 0x41
  2999  		i--
  3000  		dAtA[i] = 0xb8
  3001  	}
  3002  	if m.Miscellaneous != nil {
  3003  		{
  3004  			size, err := m.Miscellaneous.MarshalToSizedBuffer(dAtA[:i])
  3005  			if err != nil {
  3006  				return 0, err
  3007  			}
  3008  			i -= size
  3009  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3010  		}
  3011  		i--
  3012  		dAtA[i] = 0x52
  3013  	}
  3014  	if m.City != 0 {
  3015  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.City))
  3016  		i--
  3017  		dAtA[i] = 0x30
  3018  	}
  3019  	if m.Fewer != 0 {
  3020  		i -= 4
  3021  		encoding_binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.Fewer))))
  3022  		i--
  3023  		dAtA[i] = 0x25
  3024  	}
  3025  	if len(m.Name) > 0 {
  3026  		i -= len(m.Name)
  3027  		copy(dAtA[i:], m.Name)
  3028  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.Name)))
  3029  		i--
  3030  		dAtA[i] = 0x1a
  3031  	}
  3032  	if m.Industry != 0 {
  3033  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.Industry))
  3034  		i--
  3035  		dAtA[i] = 0x10
  3036  	}
  3037  	if m.Id != 0 {
  3038  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.Id))
  3039  		i--
  3040  		dAtA[i] = 0x8
  3041  	}
  3042  	return len(dAtA) - i, nil
  3043  }
  3044  
  3045  func (m *Nested4A) Marshal() (dAtA []byte, err error) {
  3046  	size := m.Size()
  3047  	dAtA = make([]byte, size)
  3048  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  3049  	if err != nil {
  3050  		return nil, err
  3051  	}
  3052  	return dAtA[:n], nil
  3053  }
  3054  
  3055  func (m *Nested4A) MarshalTo(dAtA []byte) (int, error) {
  3056  	size := m.Size()
  3057  	return m.MarshalToSizedBuffer(dAtA[:size])
  3058  }
  3059  
  3060  func (m *Nested4A) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3061  	i := len(dAtA)
  3062  	_ = i
  3063  	var l int
  3064  	_ = l
  3065  	if len(m.Name) > 0 {
  3066  		i -= len(m.Name)
  3067  		copy(dAtA[i:], m.Name)
  3068  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.Name)))
  3069  		i--
  3070  		dAtA[i] = 0x12
  3071  	}
  3072  	if m.Id != 0 {
  3073  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.Id))
  3074  		i--
  3075  		dAtA[i] = 0x8
  3076  	}
  3077  	return len(dAtA) - i, nil
  3078  }
  3079  
  3080  func (m *Nested3A) Marshal() (dAtA []byte, err error) {
  3081  	size := m.Size()
  3082  	dAtA = make([]byte, size)
  3083  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  3084  	if err != nil {
  3085  		return nil, err
  3086  	}
  3087  	return dAtA[:n], nil
  3088  }
  3089  
  3090  func (m *Nested3A) MarshalTo(dAtA []byte) (int, error) {
  3091  	size := m.Size()
  3092  	return m.MarshalToSizedBuffer(dAtA[:size])
  3093  }
  3094  
  3095  func (m *Nested3A) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3096  	i := len(dAtA)
  3097  	_ = i
  3098  	var l int
  3099  	_ = l
  3100  	if len(m.Index) > 0 {
  3101  		for k := range m.Index {
  3102  			v := m.Index[k]
  3103  			baseI := i
  3104  			if v != nil {
  3105  				{
  3106  					size, err := v.MarshalToSizedBuffer(dAtA[:i])
  3107  					if err != nil {
  3108  						return 0, err
  3109  					}
  3110  					i -= size
  3111  					i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3112  				}
  3113  				i--
  3114  				dAtA[i] = 0x12
  3115  			}
  3116  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(k))
  3117  			i--
  3118  			dAtA[i] = 0x8
  3119  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(baseI-i))
  3120  			i--
  3121  			dAtA[i] = 0x2a
  3122  		}
  3123  	}
  3124  	if len(m.A4) > 0 {
  3125  		for iNdEx := len(m.A4) - 1; iNdEx >= 0; iNdEx-- {
  3126  			{
  3127  				size, err := m.A4[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  3128  				if err != nil {
  3129  					return 0, err
  3130  				}
  3131  				i -= size
  3132  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3133  			}
  3134  			i--
  3135  			dAtA[i] = 0x22
  3136  		}
  3137  	}
  3138  	if len(m.Name) > 0 {
  3139  		i -= len(m.Name)
  3140  		copy(dAtA[i:], m.Name)
  3141  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.Name)))
  3142  		i--
  3143  		dAtA[i] = 0x12
  3144  	}
  3145  	if m.Id != 0 {
  3146  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.Id))
  3147  		i--
  3148  		dAtA[i] = 0x8
  3149  	}
  3150  	return len(dAtA) - i, nil
  3151  }
  3152  
  3153  func (m *Nested2A) Marshal() (dAtA []byte, err error) {
  3154  	size := m.Size()
  3155  	dAtA = make([]byte, size)
  3156  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  3157  	if err != nil {
  3158  		return nil, err
  3159  	}
  3160  	return dAtA[:n], nil
  3161  }
  3162  
  3163  func (m *Nested2A) MarshalTo(dAtA []byte) (int, error) {
  3164  	size := m.Size()
  3165  	return m.MarshalToSizedBuffer(dAtA[:size])
  3166  }
  3167  
  3168  func (m *Nested2A) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3169  	i := len(dAtA)
  3170  	_ = i
  3171  	var l int
  3172  	_ = l
  3173  	if m.Nested != nil {
  3174  		{
  3175  			size, err := m.Nested.MarshalToSizedBuffer(dAtA[:i])
  3176  			if err != nil {
  3177  				return 0, err
  3178  			}
  3179  			i -= size
  3180  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3181  		}
  3182  		i--
  3183  		dAtA[i] = 0x1a
  3184  	}
  3185  	if len(m.Name) > 0 {
  3186  		i -= len(m.Name)
  3187  		copy(dAtA[i:], m.Name)
  3188  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.Name)))
  3189  		i--
  3190  		dAtA[i] = 0x12
  3191  	}
  3192  	if m.Id != 0 {
  3193  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.Id))
  3194  		i--
  3195  		dAtA[i] = 0x8
  3196  	}
  3197  	return len(dAtA) - i, nil
  3198  }
  3199  
  3200  func (m *Nested1A) Marshal() (dAtA []byte, err error) {
  3201  	size := m.Size()
  3202  	dAtA = make([]byte, size)
  3203  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  3204  	if err != nil {
  3205  		return nil, err
  3206  	}
  3207  	return dAtA[:n], nil
  3208  }
  3209  
  3210  func (m *Nested1A) MarshalTo(dAtA []byte) (int, error) {
  3211  	size := m.Size()
  3212  	return m.MarshalToSizedBuffer(dAtA[:size])
  3213  }
  3214  
  3215  func (m *Nested1A) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3216  	i := len(dAtA)
  3217  	_ = i
  3218  	var l int
  3219  	_ = l
  3220  	if m.Nested != nil {
  3221  		{
  3222  			size, err := m.Nested.MarshalToSizedBuffer(dAtA[:i])
  3223  			if err != nil {
  3224  				return 0, err
  3225  			}
  3226  			i -= size
  3227  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3228  		}
  3229  		i--
  3230  		dAtA[i] = 0x12
  3231  	}
  3232  	if m.Id != 0 {
  3233  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.Id))
  3234  		i--
  3235  		dAtA[i] = 0x8
  3236  	}
  3237  	return len(dAtA) - i, nil
  3238  }
  3239  
  3240  func (m *Nested4B) Marshal() (dAtA []byte, err error) {
  3241  	size := m.Size()
  3242  	dAtA = make([]byte, size)
  3243  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  3244  	if err != nil {
  3245  		return nil, err
  3246  	}
  3247  	return dAtA[:n], nil
  3248  }
  3249  
  3250  func (m *Nested4B) MarshalTo(dAtA []byte) (int, error) {
  3251  	size := m.Size()
  3252  	return m.MarshalToSizedBuffer(dAtA[:size])
  3253  }
  3254  
  3255  func (m *Nested4B) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3256  	i := len(dAtA)
  3257  	_ = i
  3258  	var l int
  3259  	_ = l
  3260  	if len(m.Name) > 0 {
  3261  		i -= len(m.Name)
  3262  		copy(dAtA[i:], m.Name)
  3263  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.Name)))
  3264  		i--
  3265  		dAtA[i] = 0x1a
  3266  	}
  3267  	if m.Age != 0 {
  3268  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.Age))
  3269  		i--
  3270  		dAtA[i] = 0x10
  3271  	}
  3272  	if m.Id != 0 {
  3273  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.Id))
  3274  		i--
  3275  		dAtA[i] = 0x8
  3276  	}
  3277  	return len(dAtA) - i, nil
  3278  }
  3279  
  3280  func (m *Nested3B) Marshal() (dAtA []byte, err error) {
  3281  	size := m.Size()
  3282  	dAtA = make([]byte, size)
  3283  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  3284  	if err != nil {
  3285  		return nil, err
  3286  	}
  3287  	return dAtA[:n], nil
  3288  }
  3289  
  3290  func (m *Nested3B) MarshalTo(dAtA []byte) (int, error) {
  3291  	size := m.Size()
  3292  	return m.MarshalToSizedBuffer(dAtA[:size])
  3293  }
  3294  
  3295  func (m *Nested3B) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3296  	i := len(dAtA)
  3297  	_ = i
  3298  	var l int
  3299  	_ = l
  3300  	if len(m.B4) > 0 {
  3301  		for iNdEx := len(m.B4) - 1; iNdEx >= 0; iNdEx-- {
  3302  			{
  3303  				size, err := m.B4[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  3304  				if err != nil {
  3305  					return 0, err
  3306  				}
  3307  				i -= size
  3308  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3309  			}
  3310  			i--
  3311  			dAtA[i] = 0x22
  3312  		}
  3313  	}
  3314  	if len(m.Name) > 0 {
  3315  		i -= len(m.Name)
  3316  		copy(dAtA[i:], m.Name)
  3317  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.Name)))
  3318  		i--
  3319  		dAtA[i] = 0x1a
  3320  	}
  3321  	if m.Age != 0 {
  3322  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.Age))
  3323  		i--
  3324  		dAtA[i] = 0x10
  3325  	}
  3326  	if m.Id != 0 {
  3327  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.Id))
  3328  		i--
  3329  		dAtA[i] = 0x8
  3330  	}
  3331  	return len(dAtA) - i, nil
  3332  }
  3333  
  3334  func (m *Nested2B) Marshal() (dAtA []byte, err error) {
  3335  	size := m.Size()
  3336  	dAtA = make([]byte, size)
  3337  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  3338  	if err != nil {
  3339  		return nil, err
  3340  	}
  3341  	return dAtA[:n], nil
  3342  }
  3343  
  3344  func (m *Nested2B) MarshalTo(dAtA []byte) (int, error) {
  3345  	size := m.Size()
  3346  	return m.MarshalToSizedBuffer(dAtA[:size])
  3347  }
  3348  
  3349  func (m *Nested2B) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3350  	i := len(dAtA)
  3351  	_ = i
  3352  	var l int
  3353  	_ = l
  3354  	if len(m.Route) > 0 {
  3355  		i -= len(m.Route)
  3356  		copy(dAtA[i:], m.Route)
  3357  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.Route)))
  3358  		i--
  3359  		dAtA[i] = 0x22
  3360  	}
  3361  	if m.Nested != nil {
  3362  		{
  3363  			size, err := m.Nested.MarshalToSizedBuffer(dAtA[:i])
  3364  			if err != nil {
  3365  				return 0, err
  3366  			}
  3367  			i -= size
  3368  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3369  		}
  3370  		i--
  3371  		dAtA[i] = 0x1a
  3372  	}
  3373  	if m.Fee != 0 {
  3374  		i -= 8
  3375  		encoding_binary.LittleEndian.PutUint64(dAtA[i:], uint64(math.Float64bits(float64(m.Fee))))
  3376  		i--
  3377  		dAtA[i] = 0x11
  3378  	}
  3379  	if m.Id != 0 {
  3380  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.Id))
  3381  		i--
  3382  		dAtA[i] = 0x8
  3383  	}
  3384  	return len(dAtA) - i, nil
  3385  }
  3386  
  3387  func (m *Nested1B) Marshal() (dAtA []byte, err error) {
  3388  	size := m.Size()
  3389  	dAtA = make([]byte, size)
  3390  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  3391  	if err != nil {
  3392  		return nil, err
  3393  	}
  3394  	return dAtA[:n], nil
  3395  }
  3396  
  3397  func (m *Nested1B) MarshalTo(dAtA []byte) (int, error) {
  3398  	size := m.Size()
  3399  	return m.MarshalToSizedBuffer(dAtA[:size])
  3400  }
  3401  
  3402  func (m *Nested1B) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3403  	i := len(dAtA)
  3404  	_ = i
  3405  	var l int
  3406  	_ = l
  3407  	if m.Age != 0 {
  3408  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.Age))
  3409  		i--
  3410  		dAtA[i] = 0x18
  3411  	}
  3412  	if m.Nested != nil {
  3413  		{
  3414  			size, err := m.Nested.MarshalToSizedBuffer(dAtA[:i])
  3415  			if err != nil {
  3416  				return 0, err
  3417  			}
  3418  			i -= size
  3419  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3420  		}
  3421  		i--
  3422  		dAtA[i] = 0x12
  3423  	}
  3424  	if m.Id != 0 {
  3425  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.Id))
  3426  		i--
  3427  		dAtA[i] = 0x8
  3428  	}
  3429  	return len(dAtA) - i, nil
  3430  }
  3431  
  3432  func (m *Customer3) Marshal() (dAtA []byte, err error) {
  3433  	size := m.Size()
  3434  	dAtA = make([]byte, size)
  3435  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  3436  	if err != nil {
  3437  		return nil, err
  3438  	}
  3439  	return dAtA[:n], nil
  3440  }
  3441  
  3442  func (m *Customer3) MarshalTo(dAtA []byte) (int, error) {
  3443  	size := m.Size()
  3444  	return m.MarshalToSizedBuffer(dAtA[:size])
  3445  }
  3446  
  3447  func (m *Customer3) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3448  	i := len(dAtA)
  3449  	_ = i
  3450  	var l int
  3451  	_ = l
  3452  	if m.Original != nil {
  3453  		{
  3454  			size, err := m.Original.MarshalToSizedBuffer(dAtA[:i])
  3455  			if err != nil {
  3456  				return 0, err
  3457  			}
  3458  			i -= size
  3459  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3460  		}
  3461  		i--
  3462  		dAtA[i] = 0x4a
  3463  	}
  3464  	if m.Payment != nil {
  3465  		{
  3466  			size := m.Payment.Size()
  3467  			i -= size
  3468  			if _, err := m.Payment.MarshalTo(dAtA[i:]); err != nil {
  3469  				return 0, err
  3470  			}
  3471  		}
  3472  	}
  3473  	if len(m.Destination) > 0 {
  3474  		i -= len(m.Destination)
  3475  		copy(dAtA[i:], m.Destination)
  3476  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.Destination)))
  3477  		i--
  3478  		dAtA[i] = 0x2a
  3479  	}
  3480  	if m.Surcharge != 0 {
  3481  		i -= 4
  3482  		encoding_binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.Surcharge))))
  3483  		i--
  3484  		dAtA[i] = 0x25
  3485  	}
  3486  	if m.Sf != 0 {
  3487  		i -= 4
  3488  		encoding_binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.Sf))))
  3489  		i--
  3490  		dAtA[i] = 0x1d
  3491  	}
  3492  	if len(m.Name) > 0 {
  3493  		i -= len(m.Name)
  3494  		copy(dAtA[i:], m.Name)
  3495  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.Name)))
  3496  		i--
  3497  		dAtA[i] = 0x12
  3498  	}
  3499  	if m.Id != 0 {
  3500  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.Id))
  3501  		i--
  3502  		dAtA[i] = 0x8
  3503  	}
  3504  	return len(dAtA) - i, nil
  3505  }
  3506  
  3507  func (m *Customer3_CreditCardNo) MarshalTo(dAtA []byte) (int, error) {
  3508  	size := m.Size()
  3509  	return m.MarshalToSizedBuffer(dAtA[:size])
  3510  }
  3511  
  3512  func (m *Customer3_CreditCardNo) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3513  	i := len(dAtA)
  3514  	i -= len(m.CreditCardNo)
  3515  	copy(dAtA[i:], m.CreditCardNo)
  3516  	i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.CreditCardNo)))
  3517  	i--
  3518  	dAtA[i] = 0x3a
  3519  	return len(dAtA) - i, nil
  3520  }
  3521  func (m *Customer3_ChequeNo) MarshalTo(dAtA []byte) (int, error) {
  3522  	size := m.Size()
  3523  	return m.MarshalToSizedBuffer(dAtA[:size])
  3524  }
  3525  
  3526  func (m *Customer3_ChequeNo) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3527  	i := len(dAtA)
  3528  	i -= len(m.ChequeNo)
  3529  	copy(dAtA[i:], m.ChequeNo)
  3530  	i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.ChequeNo)))
  3531  	i--
  3532  	dAtA[i] = 0x42
  3533  	return len(dAtA) - i, nil
  3534  }
  3535  func (m *TestVersion1) Marshal() (dAtA []byte, err error) {
  3536  	size := m.Size()
  3537  	dAtA = make([]byte, size)
  3538  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  3539  	if err != nil {
  3540  		return nil, err
  3541  	}
  3542  	return dAtA[:n], nil
  3543  }
  3544  
  3545  func (m *TestVersion1) MarshalTo(dAtA []byte) (int, error) {
  3546  	size := m.Size()
  3547  	return m.MarshalToSizedBuffer(dAtA[:size])
  3548  }
  3549  
  3550  func (m *TestVersion1) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3551  	i := len(dAtA)
  3552  	_ = i
  3553  	var l int
  3554  	_ = l
  3555  	if m.Customer1 != nil {
  3556  		{
  3557  			size, err := m.Customer1.MarshalToSizedBuffer(dAtA[:i])
  3558  			if err != nil {
  3559  				return 0, err
  3560  			}
  3561  			i -= size
  3562  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3563  		}
  3564  		i--
  3565  		dAtA[i] = 0x62
  3566  	}
  3567  	if len(m.H) > 0 {
  3568  		for iNdEx := len(m.H) - 1; iNdEx >= 0; iNdEx-- {
  3569  			{
  3570  				size, err := m.H[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  3571  				if err != nil {
  3572  					return 0, err
  3573  				}
  3574  				i -= size
  3575  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3576  			}
  3577  			i--
  3578  			dAtA[i] = 0x4a
  3579  		}
  3580  	}
  3581  	if m.G != nil {
  3582  		{
  3583  			size, err := m.G.MarshalToSizedBuffer(dAtA[:i])
  3584  			if err != nil {
  3585  				return 0, err
  3586  			}
  3587  			i -= size
  3588  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3589  		}
  3590  		i--
  3591  		dAtA[i] = 0x42
  3592  	}
  3593  	if m.Sum != nil {
  3594  		{
  3595  			size := m.Sum.Size()
  3596  			i -= size
  3597  			if _, err := m.Sum.MarshalTo(dAtA[i:]); err != nil {
  3598  				return 0, err
  3599  			}
  3600  		}
  3601  	}
  3602  	if len(m.D) > 0 {
  3603  		for iNdEx := len(m.D) - 1; iNdEx >= 0; iNdEx-- {
  3604  			{
  3605  				size, err := m.D[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  3606  				if err != nil {
  3607  					return 0, err
  3608  				}
  3609  				i -= size
  3610  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3611  			}
  3612  			i--
  3613  			dAtA[i] = 0x2a
  3614  		}
  3615  	}
  3616  	if len(m.C) > 0 {
  3617  		for iNdEx := len(m.C) - 1; iNdEx >= 0; iNdEx-- {
  3618  			{
  3619  				size, err := m.C[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  3620  				if err != nil {
  3621  					return 0, err
  3622  				}
  3623  				i -= size
  3624  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3625  			}
  3626  			i--
  3627  			dAtA[i] = 0x22
  3628  		}
  3629  	}
  3630  	if m.B != nil {
  3631  		{
  3632  			size, err := m.B.MarshalToSizedBuffer(dAtA[:i])
  3633  			if err != nil {
  3634  				return 0, err
  3635  			}
  3636  			i -= size
  3637  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3638  		}
  3639  		i--
  3640  		dAtA[i] = 0x1a
  3641  	}
  3642  	if m.A != nil {
  3643  		{
  3644  			size, err := m.A.MarshalToSizedBuffer(dAtA[:i])
  3645  			if err != nil {
  3646  				return 0, err
  3647  			}
  3648  			i -= size
  3649  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3650  		}
  3651  		i--
  3652  		dAtA[i] = 0x12
  3653  	}
  3654  	if m.X != 0 {
  3655  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.X))
  3656  		i--
  3657  		dAtA[i] = 0x8
  3658  	}
  3659  	return len(dAtA) - i, nil
  3660  }
  3661  
  3662  func (m *TestVersion1_E) MarshalTo(dAtA []byte) (int, error) {
  3663  	size := m.Size()
  3664  	return m.MarshalToSizedBuffer(dAtA[:size])
  3665  }
  3666  
  3667  func (m *TestVersion1_E) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3668  	i := len(dAtA)
  3669  	i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.E))
  3670  	i--
  3671  	dAtA[i] = 0x30
  3672  	return len(dAtA) - i, nil
  3673  }
  3674  func (m *TestVersion1_F) MarshalTo(dAtA []byte) (int, error) {
  3675  	size := m.Size()
  3676  	return m.MarshalToSizedBuffer(dAtA[:size])
  3677  }
  3678  
  3679  func (m *TestVersion1_F) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3680  	i := len(dAtA)
  3681  	if m.F != nil {
  3682  		{
  3683  			size, err := m.F.MarshalToSizedBuffer(dAtA[:i])
  3684  			if err != nil {
  3685  				return 0, err
  3686  			}
  3687  			i -= size
  3688  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3689  		}
  3690  		i--
  3691  		dAtA[i] = 0x3a
  3692  	}
  3693  	return len(dAtA) - i, nil
  3694  }
  3695  func (m *TestVersion2) Marshal() (dAtA []byte, err error) {
  3696  	size := m.Size()
  3697  	dAtA = make([]byte, size)
  3698  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  3699  	if err != nil {
  3700  		return nil, err
  3701  	}
  3702  	return dAtA[:n], nil
  3703  }
  3704  
  3705  func (m *TestVersion2) MarshalTo(dAtA []byte) (int, error) {
  3706  	size := m.Size()
  3707  	return m.MarshalToSizedBuffer(dAtA[:size])
  3708  }
  3709  
  3710  func (m *TestVersion2) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3711  	i := len(dAtA)
  3712  	_ = i
  3713  	var l int
  3714  	_ = l
  3715  	if m.NewField != 0 {
  3716  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.NewField))
  3717  		i--
  3718  		dAtA[i] = 0x1
  3719  		i--
  3720  		dAtA[i] = 0xc8
  3721  	}
  3722  	if m.Customer1 != nil {
  3723  		{
  3724  			size, err := m.Customer1.MarshalToSizedBuffer(dAtA[:i])
  3725  			if err != nil {
  3726  				return 0, err
  3727  			}
  3728  			i -= size
  3729  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3730  		}
  3731  		i--
  3732  		dAtA[i] = 0x62
  3733  	}
  3734  	if len(m.H) > 0 {
  3735  		for iNdEx := len(m.H) - 1; iNdEx >= 0; iNdEx-- {
  3736  			{
  3737  				size, err := m.H[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  3738  				if err != nil {
  3739  					return 0, err
  3740  				}
  3741  				i -= size
  3742  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3743  			}
  3744  			i--
  3745  			dAtA[i] = 0x4a
  3746  		}
  3747  	}
  3748  	if m.G != nil {
  3749  		{
  3750  			size, err := m.G.MarshalToSizedBuffer(dAtA[:i])
  3751  			if err != nil {
  3752  				return 0, err
  3753  			}
  3754  			i -= size
  3755  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3756  		}
  3757  		i--
  3758  		dAtA[i] = 0x42
  3759  	}
  3760  	if m.Sum != nil {
  3761  		{
  3762  			size := m.Sum.Size()
  3763  			i -= size
  3764  			if _, err := m.Sum.MarshalTo(dAtA[i:]); err != nil {
  3765  				return 0, err
  3766  			}
  3767  		}
  3768  	}
  3769  	if len(m.D) > 0 {
  3770  		for iNdEx := len(m.D) - 1; iNdEx >= 0; iNdEx-- {
  3771  			{
  3772  				size, err := m.D[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  3773  				if err != nil {
  3774  					return 0, err
  3775  				}
  3776  				i -= size
  3777  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3778  			}
  3779  			i--
  3780  			dAtA[i] = 0x2a
  3781  		}
  3782  	}
  3783  	if len(m.C) > 0 {
  3784  		for iNdEx := len(m.C) - 1; iNdEx >= 0; iNdEx-- {
  3785  			{
  3786  				size, err := m.C[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  3787  				if err != nil {
  3788  					return 0, err
  3789  				}
  3790  				i -= size
  3791  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3792  			}
  3793  			i--
  3794  			dAtA[i] = 0x22
  3795  		}
  3796  	}
  3797  	if m.B != nil {
  3798  		{
  3799  			size, err := m.B.MarshalToSizedBuffer(dAtA[:i])
  3800  			if err != nil {
  3801  				return 0, err
  3802  			}
  3803  			i -= size
  3804  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3805  		}
  3806  		i--
  3807  		dAtA[i] = 0x1a
  3808  	}
  3809  	if m.A != nil {
  3810  		{
  3811  			size, err := m.A.MarshalToSizedBuffer(dAtA[:i])
  3812  			if err != nil {
  3813  				return 0, err
  3814  			}
  3815  			i -= size
  3816  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3817  		}
  3818  		i--
  3819  		dAtA[i] = 0x12
  3820  	}
  3821  	if m.X != 0 {
  3822  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.X))
  3823  		i--
  3824  		dAtA[i] = 0x8
  3825  	}
  3826  	return len(dAtA) - i, nil
  3827  }
  3828  
  3829  func (m *TestVersion2_E) MarshalTo(dAtA []byte) (int, error) {
  3830  	size := m.Size()
  3831  	return m.MarshalToSizedBuffer(dAtA[:size])
  3832  }
  3833  
  3834  func (m *TestVersion2_E) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3835  	i := len(dAtA)
  3836  	i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.E))
  3837  	i--
  3838  	dAtA[i] = 0x30
  3839  	return len(dAtA) - i, nil
  3840  }
  3841  func (m *TestVersion2_F) MarshalTo(dAtA []byte) (int, error) {
  3842  	size := m.Size()
  3843  	return m.MarshalToSizedBuffer(dAtA[:size])
  3844  }
  3845  
  3846  func (m *TestVersion2_F) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3847  	i := len(dAtA)
  3848  	if m.F != nil {
  3849  		{
  3850  			size, err := m.F.MarshalToSizedBuffer(dAtA[:i])
  3851  			if err != nil {
  3852  				return 0, err
  3853  			}
  3854  			i -= size
  3855  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3856  		}
  3857  		i--
  3858  		dAtA[i] = 0x3a
  3859  	}
  3860  	return len(dAtA) - i, nil
  3861  }
  3862  func (m *TestVersion3) Marshal() (dAtA []byte, err error) {
  3863  	size := m.Size()
  3864  	dAtA = make([]byte, size)
  3865  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  3866  	if err != nil {
  3867  		return nil, err
  3868  	}
  3869  	return dAtA[:n], nil
  3870  }
  3871  
  3872  func (m *TestVersion3) MarshalTo(dAtA []byte) (int, error) {
  3873  	size := m.Size()
  3874  	return m.MarshalToSizedBuffer(dAtA[:size])
  3875  }
  3876  
  3877  func (m *TestVersion3) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3878  	i := len(dAtA)
  3879  	_ = i
  3880  	var l int
  3881  	_ = l
  3882  	if len(m.NonCriticalField) > 0 {
  3883  		i -= len(m.NonCriticalField)
  3884  		copy(dAtA[i:], m.NonCriticalField)
  3885  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.NonCriticalField)))
  3886  		i--
  3887  		dAtA[i] = 0x40
  3888  		i--
  3889  		dAtA[i] = 0xba
  3890  	}
  3891  	if m.Customer1 != nil {
  3892  		{
  3893  			size, err := m.Customer1.MarshalToSizedBuffer(dAtA[:i])
  3894  			if err != nil {
  3895  				return 0, err
  3896  			}
  3897  			i -= size
  3898  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3899  		}
  3900  		i--
  3901  		dAtA[i] = 0x62
  3902  	}
  3903  	if len(m.H) > 0 {
  3904  		for iNdEx := len(m.H) - 1; iNdEx >= 0; iNdEx-- {
  3905  			{
  3906  				size, err := m.H[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  3907  				if err != nil {
  3908  					return 0, err
  3909  				}
  3910  				i -= size
  3911  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3912  			}
  3913  			i--
  3914  			dAtA[i] = 0x4a
  3915  		}
  3916  	}
  3917  	if m.G != nil {
  3918  		{
  3919  			size, err := m.G.MarshalToSizedBuffer(dAtA[:i])
  3920  			if err != nil {
  3921  				return 0, err
  3922  			}
  3923  			i -= size
  3924  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3925  		}
  3926  		i--
  3927  		dAtA[i] = 0x42
  3928  	}
  3929  	if m.Sum != nil {
  3930  		{
  3931  			size := m.Sum.Size()
  3932  			i -= size
  3933  			if _, err := m.Sum.MarshalTo(dAtA[i:]); err != nil {
  3934  				return 0, err
  3935  			}
  3936  		}
  3937  	}
  3938  	if len(m.D) > 0 {
  3939  		for iNdEx := len(m.D) - 1; iNdEx >= 0; iNdEx-- {
  3940  			{
  3941  				size, err := m.D[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  3942  				if err != nil {
  3943  					return 0, err
  3944  				}
  3945  				i -= size
  3946  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3947  			}
  3948  			i--
  3949  			dAtA[i] = 0x2a
  3950  		}
  3951  	}
  3952  	if len(m.C) > 0 {
  3953  		for iNdEx := len(m.C) - 1; iNdEx >= 0; iNdEx-- {
  3954  			{
  3955  				size, err := m.C[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  3956  				if err != nil {
  3957  					return 0, err
  3958  				}
  3959  				i -= size
  3960  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3961  			}
  3962  			i--
  3963  			dAtA[i] = 0x22
  3964  		}
  3965  	}
  3966  	if m.B != nil {
  3967  		{
  3968  			size, err := m.B.MarshalToSizedBuffer(dAtA[:i])
  3969  			if err != nil {
  3970  				return 0, err
  3971  			}
  3972  			i -= size
  3973  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3974  		}
  3975  		i--
  3976  		dAtA[i] = 0x1a
  3977  	}
  3978  	if m.A != nil {
  3979  		{
  3980  			size, err := m.A.MarshalToSizedBuffer(dAtA[:i])
  3981  			if err != nil {
  3982  				return 0, err
  3983  			}
  3984  			i -= size
  3985  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  3986  		}
  3987  		i--
  3988  		dAtA[i] = 0x12
  3989  	}
  3990  	if m.X != 0 {
  3991  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.X))
  3992  		i--
  3993  		dAtA[i] = 0x8
  3994  	}
  3995  	return len(dAtA) - i, nil
  3996  }
  3997  
  3998  func (m *TestVersion3_E) MarshalTo(dAtA []byte) (int, error) {
  3999  	size := m.Size()
  4000  	return m.MarshalToSizedBuffer(dAtA[:size])
  4001  }
  4002  
  4003  func (m *TestVersion3_E) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4004  	i := len(dAtA)
  4005  	i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.E))
  4006  	i--
  4007  	dAtA[i] = 0x30
  4008  	return len(dAtA) - i, nil
  4009  }
  4010  func (m *TestVersion3_F) MarshalTo(dAtA []byte) (int, error) {
  4011  	size := m.Size()
  4012  	return m.MarshalToSizedBuffer(dAtA[:size])
  4013  }
  4014  
  4015  func (m *TestVersion3_F) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4016  	i := len(dAtA)
  4017  	if m.F != nil {
  4018  		{
  4019  			size, err := m.F.MarshalToSizedBuffer(dAtA[:i])
  4020  			if err != nil {
  4021  				return 0, err
  4022  			}
  4023  			i -= size
  4024  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4025  		}
  4026  		i--
  4027  		dAtA[i] = 0x3a
  4028  	}
  4029  	return len(dAtA) - i, nil
  4030  }
  4031  func (m *TestVersion3LoneOneOfValue) Marshal() (dAtA []byte, err error) {
  4032  	size := m.Size()
  4033  	dAtA = make([]byte, size)
  4034  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4035  	if err != nil {
  4036  		return nil, err
  4037  	}
  4038  	return dAtA[:n], nil
  4039  }
  4040  
  4041  func (m *TestVersion3LoneOneOfValue) MarshalTo(dAtA []byte) (int, error) {
  4042  	size := m.Size()
  4043  	return m.MarshalToSizedBuffer(dAtA[:size])
  4044  }
  4045  
  4046  func (m *TestVersion3LoneOneOfValue) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4047  	i := len(dAtA)
  4048  	_ = i
  4049  	var l int
  4050  	_ = l
  4051  	if len(m.NonCriticalField) > 0 {
  4052  		i -= len(m.NonCriticalField)
  4053  		copy(dAtA[i:], m.NonCriticalField)
  4054  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.NonCriticalField)))
  4055  		i--
  4056  		dAtA[i] = 0x40
  4057  		i--
  4058  		dAtA[i] = 0xba
  4059  	}
  4060  	if m.Customer1 != nil {
  4061  		{
  4062  			size, err := m.Customer1.MarshalToSizedBuffer(dAtA[:i])
  4063  			if err != nil {
  4064  				return 0, err
  4065  			}
  4066  			i -= size
  4067  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4068  		}
  4069  		i--
  4070  		dAtA[i] = 0x62
  4071  	}
  4072  	if len(m.H) > 0 {
  4073  		for iNdEx := len(m.H) - 1; iNdEx >= 0; iNdEx-- {
  4074  			{
  4075  				size, err := m.H[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  4076  				if err != nil {
  4077  					return 0, err
  4078  				}
  4079  				i -= size
  4080  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4081  			}
  4082  			i--
  4083  			dAtA[i] = 0x4a
  4084  		}
  4085  	}
  4086  	if m.G != nil {
  4087  		{
  4088  			size, err := m.G.MarshalToSizedBuffer(dAtA[:i])
  4089  			if err != nil {
  4090  				return 0, err
  4091  			}
  4092  			i -= size
  4093  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4094  		}
  4095  		i--
  4096  		dAtA[i] = 0x42
  4097  	}
  4098  	if m.Sum != nil {
  4099  		{
  4100  			size := m.Sum.Size()
  4101  			i -= size
  4102  			if _, err := m.Sum.MarshalTo(dAtA[i:]); err != nil {
  4103  				return 0, err
  4104  			}
  4105  		}
  4106  	}
  4107  	if len(m.D) > 0 {
  4108  		for iNdEx := len(m.D) - 1; iNdEx >= 0; iNdEx-- {
  4109  			{
  4110  				size, err := m.D[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  4111  				if err != nil {
  4112  					return 0, err
  4113  				}
  4114  				i -= size
  4115  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4116  			}
  4117  			i--
  4118  			dAtA[i] = 0x2a
  4119  		}
  4120  	}
  4121  	if len(m.C) > 0 {
  4122  		for iNdEx := len(m.C) - 1; iNdEx >= 0; iNdEx-- {
  4123  			{
  4124  				size, err := m.C[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  4125  				if err != nil {
  4126  					return 0, err
  4127  				}
  4128  				i -= size
  4129  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4130  			}
  4131  			i--
  4132  			dAtA[i] = 0x22
  4133  		}
  4134  	}
  4135  	if m.B != nil {
  4136  		{
  4137  			size, err := m.B.MarshalToSizedBuffer(dAtA[:i])
  4138  			if err != nil {
  4139  				return 0, err
  4140  			}
  4141  			i -= size
  4142  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4143  		}
  4144  		i--
  4145  		dAtA[i] = 0x1a
  4146  	}
  4147  	if m.A != nil {
  4148  		{
  4149  			size, err := m.A.MarshalToSizedBuffer(dAtA[:i])
  4150  			if err != nil {
  4151  				return 0, err
  4152  			}
  4153  			i -= size
  4154  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4155  		}
  4156  		i--
  4157  		dAtA[i] = 0x12
  4158  	}
  4159  	if m.X != 0 {
  4160  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.X))
  4161  		i--
  4162  		dAtA[i] = 0x8
  4163  	}
  4164  	return len(dAtA) - i, nil
  4165  }
  4166  
  4167  func (m *TestVersion3LoneOneOfValue_E) MarshalTo(dAtA []byte) (int, error) {
  4168  	size := m.Size()
  4169  	return m.MarshalToSizedBuffer(dAtA[:size])
  4170  }
  4171  
  4172  func (m *TestVersion3LoneOneOfValue_E) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4173  	i := len(dAtA)
  4174  	i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.E))
  4175  	i--
  4176  	dAtA[i] = 0x30
  4177  	return len(dAtA) - i, nil
  4178  }
  4179  func (m *TestVersion3LoneNesting) Marshal() (dAtA []byte, err error) {
  4180  	size := m.Size()
  4181  	dAtA = make([]byte, size)
  4182  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4183  	if err != nil {
  4184  		return nil, err
  4185  	}
  4186  	return dAtA[:n], nil
  4187  }
  4188  
  4189  func (m *TestVersion3LoneNesting) MarshalTo(dAtA []byte) (int, error) {
  4190  	size := m.Size()
  4191  	return m.MarshalToSizedBuffer(dAtA[:size])
  4192  }
  4193  
  4194  func (m *TestVersion3LoneNesting) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4195  	i := len(dAtA)
  4196  	_ = i
  4197  	var l int
  4198  	_ = l
  4199  	if len(m.NonCriticalField) > 0 {
  4200  		i -= len(m.NonCriticalField)
  4201  		copy(dAtA[i:], m.NonCriticalField)
  4202  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.NonCriticalField)))
  4203  		i--
  4204  		dAtA[i] = 0x40
  4205  		i--
  4206  		dAtA[i] = 0xba
  4207  	}
  4208  	if m.Inner2 != nil {
  4209  		{
  4210  			size, err := m.Inner2.MarshalToSizedBuffer(dAtA[:i])
  4211  			if err != nil {
  4212  				return 0, err
  4213  			}
  4214  			i -= size
  4215  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4216  		}
  4217  		i--
  4218  		dAtA[i] = 0x7a
  4219  	}
  4220  	if m.Inner1 != nil {
  4221  		{
  4222  			size, err := m.Inner1.MarshalToSizedBuffer(dAtA[:i])
  4223  			if err != nil {
  4224  				return 0, err
  4225  			}
  4226  			i -= size
  4227  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4228  		}
  4229  		i--
  4230  		dAtA[i] = 0x72
  4231  	}
  4232  	if m.Customer1 != nil {
  4233  		{
  4234  			size, err := m.Customer1.MarshalToSizedBuffer(dAtA[:i])
  4235  			if err != nil {
  4236  				return 0, err
  4237  			}
  4238  			i -= size
  4239  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4240  		}
  4241  		i--
  4242  		dAtA[i] = 0x62
  4243  	}
  4244  	if len(m.H) > 0 {
  4245  		for iNdEx := len(m.H) - 1; iNdEx >= 0; iNdEx-- {
  4246  			{
  4247  				size, err := m.H[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  4248  				if err != nil {
  4249  					return 0, err
  4250  				}
  4251  				i -= size
  4252  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4253  			}
  4254  			i--
  4255  			dAtA[i] = 0x4a
  4256  		}
  4257  	}
  4258  	if m.G != nil {
  4259  		{
  4260  			size, err := m.G.MarshalToSizedBuffer(dAtA[:i])
  4261  			if err != nil {
  4262  				return 0, err
  4263  			}
  4264  			i -= size
  4265  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4266  		}
  4267  		i--
  4268  		dAtA[i] = 0x42
  4269  	}
  4270  	if m.Sum != nil {
  4271  		{
  4272  			size := m.Sum.Size()
  4273  			i -= size
  4274  			if _, err := m.Sum.MarshalTo(dAtA[i:]); err != nil {
  4275  				return 0, err
  4276  			}
  4277  		}
  4278  	}
  4279  	if len(m.D) > 0 {
  4280  		for iNdEx := len(m.D) - 1; iNdEx >= 0; iNdEx-- {
  4281  			{
  4282  				size, err := m.D[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  4283  				if err != nil {
  4284  					return 0, err
  4285  				}
  4286  				i -= size
  4287  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4288  			}
  4289  			i--
  4290  			dAtA[i] = 0x2a
  4291  		}
  4292  	}
  4293  	if len(m.C) > 0 {
  4294  		for iNdEx := len(m.C) - 1; iNdEx >= 0; iNdEx-- {
  4295  			{
  4296  				size, err := m.C[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  4297  				if err != nil {
  4298  					return 0, err
  4299  				}
  4300  				i -= size
  4301  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4302  			}
  4303  			i--
  4304  			dAtA[i] = 0x22
  4305  		}
  4306  	}
  4307  	if m.B != nil {
  4308  		{
  4309  			size, err := m.B.MarshalToSizedBuffer(dAtA[:i])
  4310  			if err != nil {
  4311  				return 0, err
  4312  			}
  4313  			i -= size
  4314  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4315  		}
  4316  		i--
  4317  		dAtA[i] = 0x1a
  4318  	}
  4319  	if m.A != nil {
  4320  		{
  4321  			size, err := m.A.MarshalToSizedBuffer(dAtA[:i])
  4322  			if err != nil {
  4323  				return 0, err
  4324  			}
  4325  			i -= size
  4326  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4327  		}
  4328  		i--
  4329  		dAtA[i] = 0x12
  4330  	}
  4331  	if m.X != 0 {
  4332  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.X))
  4333  		i--
  4334  		dAtA[i] = 0x8
  4335  	}
  4336  	return len(dAtA) - i, nil
  4337  }
  4338  
  4339  func (m *TestVersion3LoneNesting_F) MarshalTo(dAtA []byte) (int, error) {
  4340  	size := m.Size()
  4341  	return m.MarshalToSizedBuffer(dAtA[:size])
  4342  }
  4343  
  4344  func (m *TestVersion3LoneNesting_F) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4345  	i := len(dAtA)
  4346  	if m.F != nil {
  4347  		{
  4348  			size, err := m.F.MarshalToSizedBuffer(dAtA[:i])
  4349  			if err != nil {
  4350  				return 0, err
  4351  			}
  4352  			i -= size
  4353  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4354  		}
  4355  		i--
  4356  		dAtA[i] = 0x3a
  4357  	}
  4358  	return len(dAtA) - i, nil
  4359  }
  4360  func (m *TestVersion3LoneNesting_Inner1) Marshal() (dAtA []byte, err error) {
  4361  	size := m.Size()
  4362  	dAtA = make([]byte, size)
  4363  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4364  	if err != nil {
  4365  		return nil, err
  4366  	}
  4367  	return dAtA[:n], nil
  4368  }
  4369  
  4370  func (m *TestVersion3LoneNesting_Inner1) MarshalTo(dAtA []byte) (int, error) {
  4371  	size := m.Size()
  4372  	return m.MarshalToSizedBuffer(dAtA[:size])
  4373  }
  4374  
  4375  func (m *TestVersion3LoneNesting_Inner1) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4376  	i := len(dAtA)
  4377  	_ = i
  4378  	var l int
  4379  	_ = l
  4380  	if m.Inner != nil {
  4381  		{
  4382  			size, err := m.Inner.MarshalToSizedBuffer(dAtA[:i])
  4383  			if err != nil {
  4384  				return 0, err
  4385  			}
  4386  			i -= size
  4387  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4388  		}
  4389  		i--
  4390  		dAtA[i] = 0x1a
  4391  	}
  4392  	if len(m.Name) > 0 {
  4393  		i -= len(m.Name)
  4394  		copy(dAtA[i:], m.Name)
  4395  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.Name)))
  4396  		i--
  4397  		dAtA[i] = 0x12
  4398  	}
  4399  	if m.Id != 0 {
  4400  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.Id))
  4401  		i--
  4402  		dAtA[i] = 0x8
  4403  	}
  4404  	return len(dAtA) - i, nil
  4405  }
  4406  
  4407  func (m *TestVersion3LoneNesting_Inner1_InnerInner) Marshal() (dAtA []byte, err error) {
  4408  	size := m.Size()
  4409  	dAtA = make([]byte, size)
  4410  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4411  	if err != nil {
  4412  		return nil, err
  4413  	}
  4414  	return dAtA[:n], nil
  4415  }
  4416  
  4417  func (m *TestVersion3LoneNesting_Inner1_InnerInner) MarshalTo(dAtA []byte) (int, error) {
  4418  	size := m.Size()
  4419  	return m.MarshalToSizedBuffer(dAtA[:size])
  4420  }
  4421  
  4422  func (m *TestVersion3LoneNesting_Inner1_InnerInner) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4423  	i := len(dAtA)
  4424  	_ = i
  4425  	var l int
  4426  	_ = l
  4427  	if len(m.City) > 0 {
  4428  		i -= len(m.City)
  4429  		copy(dAtA[i:], m.City)
  4430  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.City)))
  4431  		i--
  4432  		dAtA[i] = 0x12
  4433  	}
  4434  	if len(m.Id) > 0 {
  4435  		i -= len(m.Id)
  4436  		copy(dAtA[i:], m.Id)
  4437  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.Id)))
  4438  		i--
  4439  		dAtA[i] = 0xa
  4440  	}
  4441  	return len(dAtA) - i, nil
  4442  }
  4443  
  4444  func (m *TestVersion3LoneNesting_Inner2) Marshal() (dAtA []byte, err error) {
  4445  	size := m.Size()
  4446  	dAtA = make([]byte, size)
  4447  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4448  	if err != nil {
  4449  		return nil, err
  4450  	}
  4451  	return dAtA[:n], nil
  4452  }
  4453  
  4454  func (m *TestVersion3LoneNesting_Inner2) MarshalTo(dAtA []byte) (int, error) {
  4455  	size := m.Size()
  4456  	return m.MarshalToSizedBuffer(dAtA[:size])
  4457  }
  4458  
  4459  func (m *TestVersion3LoneNesting_Inner2) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4460  	i := len(dAtA)
  4461  	_ = i
  4462  	var l int
  4463  	_ = l
  4464  	if m.Inner != nil {
  4465  		{
  4466  			size, err := m.Inner.MarshalToSizedBuffer(dAtA[:i])
  4467  			if err != nil {
  4468  				return 0, err
  4469  			}
  4470  			i -= size
  4471  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4472  		}
  4473  		i--
  4474  		dAtA[i] = 0x1a
  4475  	}
  4476  	if len(m.Country) > 0 {
  4477  		i -= len(m.Country)
  4478  		copy(dAtA[i:], m.Country)
  4479  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.Country)))
  4480  		i--
  4481  		dAtA[i] = 0x12
  4482  	}
  4483  	if len(m.Id) > 0 {
  4484  		i -= len(m.Id)
  4485  		copy(dAtA[i:], m.Id)
  4486  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.Id)))
  4487  		i--
  4488  		dAtA[i] = 0xa
  4489  	}
  4490  	return len(dAtA) - i, nil
  4491  }
  4492  
  4493  func (m *TestVersion3LoneNesting_Inner2_InnerInner) Marshal() (dAtA []byte, err error) {
  4494  	size := m.Size()
  4495  	dAtA = make([]byte, size)
  4496  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4497  	if err != nil {
  4498  		return nil, err
  4499  	}
  4500  	return dAtA[:n], nil
  4501  }
  4502  
  4503  func (m *TestVersion3LoneNesting_Inner2_InnerInner) MarshalTo(dAtA []byte) (int, error) {
  4504  	size := m.Size()
  4505  	return m.MarshalToSizedBuffer(dAtA[:size])
  4506  }
  4507  
  4508  func (m *TestVersion3LoneNesting_Inner2_InnerInner) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4509  	i := len(dAtA)
  4510  	_ = i
  4511  	var l int
  4512  	_ = l
  4513  	if len(m.City) > 0 {
  4514  		i -= len(m.City)
  4515  		copy(dAtA[i:], m.City)
  4516  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.City)))
  4517  		i--
  4518  		dAtA[i] = 0x12
  4519  	}
  4520  	if len(m.Id) > 0 {
  4521  		i -= len(m.Id)
  4522  		copy(dAtA[i:], m.Id)
  4523  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.Id)))
  4524  		i--
  4525  		dAtA[i] = 0xa
  4526  	}
  4527  	return len(dAtA) - i, nil
  4528  }
  4529  
  4530  func (m *TestVersion4LoneNesting) Marshal() (dAtA []byte, err error) {
  4531  	size := m.Size()
  4532  	dAtA = make([]byte, size)
  4533  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4534  	if err != nil {
  4535  		return nil, err
  4536  	}
  4537  	return dAtA[:n], nil
  4538  }
  4539  
  4540  func (m *TestVersion4LoneNesting) MarshalTo(dAtA []byte) (int, error) {
  4541  	size := m.Size()
  4542  	return m.MarshalToSizedBuffer(dAtA[:size])
  4543  }
  4544  
  4545  func (m *TestVersion4LoneNesting) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4546  	i := len(dAtA)
  4547  	_ = i
  4548  	var l int
  4549  	_ = l
  4550  	if len(m.NonCriticalField) > 0 {
  4551  		i -= len(m.NonCriticalField)
  4552  		copy(dAtA[i:], m.NonCriticalField)
  4553  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.NonCriticalField)))
  4554  		i--
  4555  		dAtA[i] = 0x40
  4556  		i--
  4557  		dAtA[i] = 0xba
  4558  	}
  4559  	if m.Inner2 != nil {
  4560  		{
  4561  			size, err := m.Inner2.MarshalToSizedBuffer(dAtA[:i])
  4562  			if err != nil {
  4563  				return 0, err
  4564  			}
  4565  			i -= size
  4566  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4567  		}
  4568  		i--
  4569  		dAtA[i] = 0x7a
  4570  	}
  4571  	if m.Inner1 != nil {
  4572  		{
  4573  			size, err := m.Inner1.MarshalToSizedBuffer(dAtA[:i])
  4574  			if err != nil {
  4575  				return 0, err
  4576  			}
  4577  			i -= size
  4578  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4579  		}
  4580  		i--
  4581  		dAtA[i] = 0x72
  4582  	}
  4583  	if m.Customer1 != nil {
  4584  		{
  4585  			size, err := m.Customer1.MarshalToSizedBuffer(dAtA[:i])
  4586  			if err != nil {
  4587  				return 0, err
  4588  			}
  4589  			i -= size
  4590  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4591  		}
  4592  		i--
  4593  		dAtA[i] = 0x62
  4594  	}
  4595  	if len(m.H) > 0 {
  4596  		for iNdEx := len(m.H) - 1; iNdEx >= 0; iNdEx-- {
  4597  			{
  4598  				size, err := m.H[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  4599  				if err != nil {
  4600  					return 0, err
  4601  				}
  4602  				i -= size
  4603  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4604  			}
  4605  			i--
  4606  			dAtA[i] = 0x4a
  4607  		}
  4608  	}
  4609  	if m.G != nil {
  4610  		{
  4611  			size, err := m.G.MarshalToSizedBuffer(dAtA[:i])
  4612  			if err != nil {
  4613  				return 0, err
  4614  			}
  4615  			i -= size
  4616  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4617  		}
  4618  		i--
  4619  		dAtA[i] = 0x42
  4620  	}
  4621  	if m.Sum != nil {
  4622  		{
  4623  			size := m.Sum.Size()
  4624  			i -= size
  4625  			if _, err := m.Sum.MarshalTo(dAtA[i:]); err != nil {
  4626  				return 0, err
  4627  			}
  4628  		}
  4629  	}
  4630  	if len(m.D) > 0 {
  4631  		for iNdEx := len(m.D) - 1; iNdEx >= 0; iNdEx-- {
  4632  			{
  4633  				size, err := m.D[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  4634  				if err != nil {
  4635  					return 0, err
  4636  				}
  4637  				i -= size
  4638  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4639  			}
  4640  			i--
  4641  			dAtA[i] = 0x2a
  4642  		}
  4643  	}
  4644  	if len(m.C) > 0 {
  4645  		for iNdEx := len(m.C) - 1; iNdEx >= 0; iNdEx-- {
  4646  			{
  4647  				size, err := m.C[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  4648  				if err != nil {
  4649  					return 0, err
  4650  				}
  4651  				i -= size
  4652  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4653  			}
  4654  			i--
  4655  			dAtA[i] = 0x22
  4656  		}
  4657  	}
  4658  	if m.B != nil {
  4659  		{
  4660  			size, err := m.B.MarshalToSizedBuffer(dAtA[:i])
  4661  			if err != nil {
  4662  				return 0, err
  4663  			}
  4664  			i -= size
  4665  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4666  		}
  4667  		i--
  4668  		dAtA[i] = 0x1a
  4669  	}
  4670  	if m.A != nil {
  4671  		{
  4672  			size, err := m.A.MarshalToSizedBuffer(dAtA[:i])
  4673  			if err != nil {
  4674  				return 0, err
  4675  			}
  4676  			i -= size
  4677  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4678  		}
  4679  		i--
  4680  		dAtA[i] = 0x12
  4681  	}
  4682  	if m.X != 0 {
  4683  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.X))
  4684  		i--
  4685  		dAtA[i] = 0x8
  4686  	}
  4687  	return len(dAtA) - i, nil
  4688  }
  4689  
  4690  func (m *TestVersion4LoneNesting_F) MarshalTo(dAtA []byte) (int, error) {
  4691  	size := m.Size()
  4692  	return m.MarshalToSizedBuffer(dAtA[:size])
  4693  }
  4694  
  4695  func (m *TestVersion4LoneNesting_F) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4696  	i := len(dAtA)
  4697  	if m.F != nil {
  4698  		{
  4699  			size, err := m.F.MarshalToSizedBuffer(dAtA[:i])
  4700  			if err != nil {
  4701  				return 0, err
  4702  			}
  4703  			i -= size
  4704  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4705  		}
  4706  		i--
  4707  		dAtA[i] = 0x3a
  4708  	}
  4709  	return len(dAtA) - i, nil
  4710  }
  4711  func (m *TestVersion4LoneNesting_Inner1) Marshal() (dAtA []byte, err error) {
  4712  	size := m.Size()
  4713  	dAtA = make([]byte, size)
  4714  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4715  	if err != nil {
  4716  		return nil, err
  4717  	}
  4718  	return dAtA[:n], nil
  4719  }
  4720  
  4721  func (m *TestVersion4LoneNesting_Inner1) MarshalTo(dAtA []byte) (int, error) {
  4722  	size := m.Size()
  4723  	return m.MarshalToSizedBuffer(dAtA[:size])
  4724  }
  4725  
  4726  func (m *TestVersion4LoneNesting_Inner1) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4727  	i := len(dAtA)
  4728  	_ = i
  4729  	var l int
  4730  	_ = l
  4731  	if m.Inner != nil {
  4732  		{
  4733  			size, err := m.Inner.MarshalToSizedBuffer(dAtA[:i])
  4734  			if err != nil {
  4735  				return 0, err
  4736  			}
  4737  			i -= size
  4738  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4739  		}
  4740  		i--
  4741  		dAtA[i] = 0x1a
  4742  	}
  4743  	if len(m.Name) > 0 {
  4744  		i -= len(m.Name)
  4745  		copy(dAtA[i:], m.Name)
  4746  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.Name)))
  4747  		i--
  4748  		dAtA[i] = 0x12
  4749  	}
  4750  	if m.Id != 0 {
  4751  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.Id))
  4752  		i--
  4753  		dAtA[i] = 0x8
  4754  	}
  4755  	return len(dAtA) - i, nil
  4756  }
  4757  
  4758  func (m *TestVersion4LoneNesting_Inner1_InnerInner) Marshal() (dAtA []byte, err error) {
  4759  	size := m.Size()
  4760  	dAtA = make([]byte, size)
  4761  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4762  	if err != nil {
  4763  		return nil, err
  4764  	}
  4765  	return dAtA[:n], nil
  4766  }
  4767  
  4768  func (m *TestVersion4LoneNesting_Inner1_InnerInner) MarshalTo(dAtA []byte) (int, error) {
  4769  	size := m.Size()
  4770  	return m.MarshalToSizedBuffer(dAtA[:size])
  4771  }
  4772  
  4773  func (m *TestVersion4LoneNesting_Inner1_InnerInner) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4774  	i := len(dAtA)
  4775  	_ = i
  4776  	var l int
  4777  	_ = l
  4778  	if len(m.City) > 0 {
  4779  		i -= len(m.City)
  4780  		copy(dAtA[i:], m.City)
  4781  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.City)))
  4782  		i--
  4783  		dAtA[i] = 0x12
  4784  	}
  4785  	if m.Id != 0 {
  4786  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.Id))
  4787  		i--
  4788  		dAtA[i] = 0x8
  4789  	}
  4790  	return len(dAtA) - i, nil
  4791  }
  4792  
  4793  func (m *TestVersion4LoneNesting_Inner2) Marshal() (dAtA []byte, err error) {
  4794  	size := m.Size()
  4795  	dAtA = make([]byte, size)
  4796  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4797  	if err != nil {
  4798  		return nil, err
  4799  	}
  4800  	return dAtA[:n], nil
  4801  }
  4802  
  4803  func (m *TestVersion4LoneNesting_Inner2) MarshalTo(dAtA []byte) (int, error) {
  4804  	size := m.Size()
  4805  	return m.MarshalToSizedBuffer(dAtA[:size])
  4806  }
  4807  
  4808  func (m *TestVersion4LoneNesting_Inner2) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4809  	i := len(dAtA)
  4810  	_ = i
  4811  	var l int
  4812  	_ = l
  4813  	if m.Inner != nil {
  4814  		{
  4815  			size, err := m.Inner.MarshalToSizedBuffer(dAtA[:i])
  4816  			if err != nil {
  4817  				return 0, err
  4818  			}
  4819  			i -= size
  4820  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4821  		}
  4822  		i--
  4823  		dAtA[i] = 0x1a
  4824  	}
  4825  	if len(m.Country) > 0 {
  4826  		i -= len(m.Country)
  4827  		copy(dAtA[i:], m.Country)
  4828  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.Country)))
  4829  		i--
  4830  		dAtA[i] = 0x12
  4831  	}
  4832  	if len(m.Id) > 0 {
  4833  		i -= len(m.Id)
  4834  		copy(dAtA[i:], m.Id)
  4835  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.Id)))
  4836  		i--
  4837  		dAtA[i] = 0xa
  4838  	}
  4839  	return len(dAtA) - i, nil
  4840  }
  4841  
  4842  func (m *TestVersion4LoneNesting_Inner2_InnerInner) Marshal() (dAtA []byte, err error) {
  4843  	size := m.Size()
  4844  	dAtA = make([]byte, size)
  4845  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4846  	if err != nil {
  4847  		return nil, err
  4848  	}
  4849  	return dAtA[:n], nil
  4850  }
  4851  
  4852  func (m *TestVersion4LoneNesting_Inner2_InnerInner) MarshalTo(dAtA []byte) (int, error) {
  4853  	size := m.Size()
  4854  	return m.MarshalToSizedBuffer(dAtA[:size])
  4855  }
  4856  
  4857  func (m *TestVersion4LoneNesting_Inner2_InnerInner) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4858  	i := len(dAtA)
  4859  	_ = i
  4860  	var l int
  4861  	_ = l
  4862  	if m.Value != 0 {
  4863  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.Value))
  4864  		i--
  4865  		dAtA[i] = 0x10
  4866  	}
  4867  	if len(m.Id) > 0 {
  4868  		i -= len(m.Id)
  4869  		copy(dAtA[i:], m.Id)
  4870  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.Id)))
  4871  		i--
  4872  		dAtA[i] = 0xa
  4873  	}
  4874  	return len(dAtA) - i, nil
  4875  }
  4876  
  4877  func (m *TestVersionFD1) Marshal() (dAtA []byte, err error) {
  4878  	size := m.Size()
  4879  	dAtA = make([]byte, size)
  4880  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4881  	if err != nil {
  4882  		return nil, err
  4883  	}
  4884  	return dAtA[:n], nil
  4885  }
  4886  
  4887  func (m *TestVersionFD1) MarshalTo(dAtA []byte) (int, error) {
  4888  	size := m.Size()
  4889  	return m.MarshalToSizedBuffer(dAtA[:size])
  4890  }
  4891  
  4892  func (m *TestVersionFD1) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4893  	i := len(dAtA)
  4894  	_ = i
  4895  	var l int
  4896  	_ = l
  4897  	if len(m.H) > 0 {
  4898  		for iNdEx := len(m.H) - 1; iNdEx >= 0; iNdEx-- {
  4899  			{
  4900  				size, err := m.H[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  4901  				if err != nil {
  4902  					return 0, err
  4903  				}
  4904  				i -= size
  4905  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4906  			}
  4907  			i--
  4908  			dAtA[i] = 0x4a
  4909  		}
  4910  	}
  4911  	if m.G != nil {
  4912  		{
  4913  			size, err := m.G.MarshalToSizedBuffer(dAtA[:i])
  4914  			if err != nil {
  4915  				return 0, err
  4916  			}
  4917  			i -= size
  4918  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4919  		}
  4920  		i--
  4921  		dAtA[i] = 0x42
  4922  	}
  4923  	if m.Sum != nil {
  4924  		{
  4925  			size := m.Sum.Size()
  4926  			i -= size
  4927  			if _, err := m.Sum.MarshalTo(dAtA[i:]); err != nil {
  4928  				return 0, err
  4929  			}
  4930  		}
  4931  	}
  4932  	if m.A != nil {
  4933  		{
  4934  			size, err := m.A.MarshalToSizedBuffer(dAtA[:i])
  4935  			if err != nil {
  4936  				return 0, err
  4937  			}
  4938  			i -= size
  4939  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4940  		}
  4941  		i--
  4942  		dAtA[i] = 0x12
  4943  	}
  4944  	if m.X != 0 {
  4945  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.X))
  4946  		i--
  4947  		dAtA[i] = 0x8
  4948  	}
  4949  	return len(dAtA) - i, nil
  4950  }
  4951  
  4952  func (m *TestVersionFD1_E) MarshalTo(dAtA []byte) (int, error) {
  4953  	size := m.Size()
  4954  	return m.MarshalToSizedBuffer(dAtA[:size])
  4955  }
  4956  
  4957  func (m *TestVersionFD1_E) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4958  	i := len(dAtA)
  4959  	i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.E))
  4960  	i--
  4961  	dAtA[i] = 0x30
  4962  	return len(dAtA) - i, nil
  4963  }
  4964  func (m *TestVersionFD1_F) MarshalTo(dAtA []byte) (int, error) {
  4965  	size := m.Size()
  4966  	return m.MarshalToSizedBuffer(dAtA[:size])
  4967  }
  4968  
  4969  func (m *TestVersionFD1_F) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  4970  	i := len(dAtA)
  4971  	if m.F != nil {
  4972  		{
  4973  			size, err := m.F.MarshalToSizedBuffer(dAtA[:i])
  4974  			if err != nil {
  4975  				return 0, err
  4976  			}
  4977  			i -= size
  4978  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  4979  		}
  4980  		i--
  4981  		dAtA[i] = 0x3a
  4982  	}
  4983  	return len(dAtA) - i, nil
  4984  }
  4985  func (m *TestVersionFD1WithExtraAny) Marshal() (dAtA []byte, err error) {
  4986  	size := m.Size()
  4987  	dAtA = make([]byte, size)
  4988  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  4989  	if err != nil {
  4990  		return nil, err
  4991  	}
  4992  	return dAtA[:n], nil
  4993  }
  4994  
  4995  func (m *TestVersionFD1WithExtraAny) MarshalTo(dAtA []byte) (int, error) {
  4996  	size := m.Size()
  4997  	return m.MarshalToSizedBuffer(dAtA[:size])
  4998  }
  4999  
  5000  func (m *TestVersionFD1WithExtraAny) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5001  	i := len(dAtA)
  5002  	_ = i
  5003  	var l int
  5004  	_ = l
  5005  	if len(m.H) > 0 {
  5006  		for iNdEx := len(m.H) - 1; iNdEx >= 0; iNdEx-- {
  5007  			{
  5008  				size, err := m.H[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  5009  				if err != nil {
  5010  					return 0, err
  5011  				}
  5012  				i -= size
  5013  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  5014  			}
  5015  			i--
  5016  			dAtA[i] = 0x4a
  5017  		}
  5018  	}
  5019  	if m.G != nil {
  5020  		{
  5021  			size, err := m.G.MarshalToSizedBuffer(dAtA[:i])
  5022  			if err != nil {
  5023  				return 0, err
  5024  			}
  5025  			i -= size
  5026  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  5027  		}
  5028  		i--
  5029  		dAtA[i] = 0x42
  5030  	}
  5031  	if m.Sum != nil {
  5032  		{
  5033  			size := m.Sum.Size()
  5034  			i -= size
  5035  			if _, err := m.Sum.MarshalTo(dAtA[i:]); err != nil {
  5036  				return 0, err
  5037  			}
  5038  		}
  5039  	}
  5040  	if m.A != nil {
  5041  		{
  5042  			size, err := m.A.MarshalToSizedBuffer(dAtA[:i])
  5043  			if err != nil {
  5044  				return 0, err
  5045  			}
  5046  			i -= size
  5047  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  5048  		}
  5049  		i--
  5050  		dAtA[i] = 0x12
  5051  	}
  5052  	if m.X != 0 {
  5053  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.X))
  5054  		i--
  5055  		dAtA[i] = 0x8
  5056  	}
  5057  	return len(dAtA) - i, nil
  5058  }
  5059  
  5060  func (m *TestVersionFD1WithExtraAny_E) MarshalTo(dAtA []byte) (int, error) {
  5061  	size := m.Size()
  5062  	return m.MarshalToSizedBuffer(dAtA[:size])
  5063  }
  5064  
  5065  func (m *TestVersionFD1WithExtraAny_E) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5066  	i := len(dAtA)
  5067  	i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.E))
  5068  	i--
  5069  	dAtA[i] = 0x30
  5070  	return len(dAtA) - i, nil
  5071  }
  5072  func (m *TestVersionFD1WithExtraAny_F) MarshalTo(dAtA []byte) (int, error) {
  5073  	size := m.Size()
  5074  	return m.MarshalToSizedBuffer(dAtA[:size])
  5075  }
  5076  
  5077  func (m *TestVersionFD1WithExtraAny_F) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5078  	i := len(dAtA)
  5079  	if m.F != nil {
  5080  		{
  5081  			size, err := m.F.MarshalToSizedBuffer(dAtA[:i])
  5082  			if err != nil {
  5083  				return 0, err
  5084  			}
  5085  			i -= size
  5086  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  5087  		}
  5088  		i--
  5089  		dAtA[i] = 0x3a
  5090  	}
  5091  	return len(dAtA) - i, nil
  5092  }
  5093  func (m *AnyWithExtra) Marshal() (dAtA []byte, err error) {
  5094  	size := m.Size()
  5095  	dAtA = make([]byte, size)
  5096  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5097  	if err != nil {
  5098  		return nil, err
  5099  	}
  5100  	return dAtA[:n], nil
  5101  }
  5102  
  5103  func (m *AnyWithExtra) MarshalTo(dAtA []byte) (int, error) {
  5104  	size := m.Size()
  5105  	return m.MarshalToSizedBuffer(dAtA[:size])
  5106  }
  5107  
  5108  func (m *AnyWithExtra) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5109  	i := len(dAtA)
  5110  	_ = i
  5111  	var l int
  5112  	_ = l
  5113  	if m.C != 0 {
  5114  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.C))
  5115  		i--
  5116  		dAtA[i] = 0x20
  5117  	}
  5118  	if m.B != 0 {
  5119  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.B))
  5120  		i--
  5121  		dAtA[i] = 0x18
  5122  	}
  5123  	if m.Any != nil {
  5124  		{
  5125  			size, err := m.Any.MarshalToSizedBuffer(dAtA[:i])
  5126  			if err != nil {
  5127  				return 0, err
  5128  			}
  5129  			i -= size
  5130  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  5131  		}
  5132  		i--
  5133  		dAtA[i] = 0xa
  5134  	}
  5135  	return len(dAtA) - i, nil
  5136  }
  5137  
  5138  func (m *TestUpdatedTxRaw) Marshal() (dAtA []byte, err error) {
  5139  	size := m.Size()
  5140  	dAtA = make([]byte, size)
  5141  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5142  	if err != nil {
  5143  		return nil, err
  5144  	}
  5145  	return dAtA[:n], nil
  5146  }
  5147  
  5148  func (m *TestUpdatedTxRaw) MarshalTo(dAtA []byte) (int, error) {
  5149  	size := m.Size()
  5150  	return m.MarshalToSizedBuffer(dAtA[:size])
  5151  }
  5152  
  5153  func (m *TestUpdatedTxRaw) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5154  	i := len(dAtA)
  5155  	_ = i
  5156  	var l int
  5157  	_ = l
  5158  	if len(m.NewField_1024) > 0 {
  5159  		i -= len(m.NewField_1024)
  5160  		copy(dAtA[i:], m.NewField_1024)
  5161  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.NewField_1024)))
  5162  		i--
  5163  		dAtA[i] = 0x40
  5164  		i--
  5165  		dAtA[i] = 0x82
  5166  	}
  5167  	if len(m.NewField_5) > 0 {
  5168  		i -= len(m.NewField_5)
  5169  		copy(dAtA[i:], m.NewField_5)
  5170  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.NewField_5)))
  5171  		i--
  5172  		dAtA[i] = 0x2a
  5173  	}
  5174  	if len(m.Signatures) > 0 {
  5175  		for iNdEx := len(m.Signatures) - 1; iNdEx >= 0; iNdEx-- {
  5176  			i -= len(m.Signatures[iNdEx])
  5177  			copy(dAtA[i:], m.Signatures[iNdEx])
  5178  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.Signatures[iNdEx])))
  5179  			i--
  5180  			dAtA[i] = 0x1a
  5181  		}
  5182  	}
  5183  	if len(m.AuthInfoBytes) > 0 {
  5184  		i -= len(m.AuthInfoBytes)
  5185  		copy(dAtA[i:], m.AuthInfoBytes)
  5186  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.AuthInfoBytes)))
  5187  		i--
  5188  		dAtA[i] = 0x12
  5189  	}
  5190  	if len(m.BodyBytes) > 0 {
  5191  		i -= len(m.BodyBytes)
  5192  		copy(dAtA[i:], m.BodyBytes)
  5193  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.BodyBytes)))
  5194  		i--
  5195  		dAtA[i] = 0xa
  5196  	}
  5197  	return len(dAtA) - i, nil
  5198  }
  5199  
  5200  func (m *TestUpdatedTxBody) Marshal() (dAtA []byte, err error) {
  5201  	size := m.Size()
  5202  	dAtA = make([]byte, size)
  5203  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5204  	if err != nil {
  5205  		return nil, err
  5206  	}
  5207  	return dAtA[:n], nil
  5208  }
  5209  
  5210  func (m *TestUpdatedTxBody) MarshalTo(dAtA []byte) (int, error) {
  5211  	size := m.Size()
  5212  	return m.MarshalToSizedBuffer(dAtA[:size])
  5213  }
  5214  
  5215  func (m *TestUpdatedTxBody) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5216  	i := len(dAtA)
  5217  	_ = i
  5218  	var l int
  5219  	_ = l
  5220  	if len(m.NonCriticalExtensionOptions) > 0 {
  5221  		for iNdEx := len(m.NonCriticalExtensionOptions) - 1; iNdEx >= 0; iNdEx-- {
  5222  			{
  5223  				size, err := m.NonCriticalExtensionOptions[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  5224  				if err != nil {
  5225  					return 0, err
  5226  				}
  5227  				i -= size
  5228  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  5229  			}
  5230  			i--
  5231  			dAtA[i] = 0x7f
  5232  			i--
  5233  			dAtA[i] = 0xfa
  5234  		}
  5235  	}
  5236  	if len(m.SomeNewFieldNonCriticalField) > 0 {
  5237  		i -= len(m.SomeNewFieldNonCriticalField)
  5238  		copy(dAtA[i:], m.SomeNewFieldNonCriticalField)
  5239  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.SomeNewFieldNonCriticalField)))
  5240  		i--
  5241  		dAtA[i] = 0x41
  5242  		i--
  5243  		dAtA[i] = 0xd2
  5244  	}
  5245  	if len(m.ExtensionOptions) > 0 {
  5246  		for iNdEx := len(m.ExtensionOptions) - 1; iNdEx >= 0; iNdEx-- {
  5247  			{
  5248  				size, err := m.ExtensionOptions[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  5249  				if err != nil {
  5250  					return 0, err
  5251  				}
  5252  				i -= size
  5253  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  5254  			}
  5255  			i--
  5256  			dAtA[i] = 0x3f
  5257  			i--
  5258  			dAtA[i] = 0xfa
  5259  		}
  5260  	}
  5261  	if m.SomeNewField != 0 {
  5262  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.SomeNewField))
  5263  		i--
  5264  		dAtA[i] = 0x20
  5265  	}
  5266  	if m.TimeoutHeight != 0 {
  5267  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(m.TimeoutHeight))
  5268  		i--
  5269  		dAtA[i] = 0x18
  5270  	}
  5271  	if len(m.Memo) > 0 {
  5272  		i -= len(m.Memo)
  5273  		copy(dAtA[i:], m.Memo)
  5274  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.Memo)))
  5275  		i--
  5276  		dAtA[i] = 0x12
  5277  	}
  5278  	if len(m.Messages) > 0 {
  5279  		for iNdEx := len(m.Messages) - 1; iNdEx >= 0; iNdEx-- {
  5280  			{
  5281  				size, err := m.Messages[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  5282  				if err != nil {
  5283  					return 0, err
  5284  				}
  5285  				i -= size
  5286  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  5287  			}
  5288  			i--
  5289  			dAtA[i] = 0xa
  5290  		}
  5291  	}
  5292  	return len(dAtA) - i, nil
  5293  }
  5294  
  5295  func (m *TestUpdatedAuthInfo) Marshal() (dAtA []byte, err error) {
  5296  	size := m.Size()
  5297  	dAtA = make([]byte, size)
  5298  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5299  	if err != nil {
  5300  		return nil, err
  5301  	}
  5302  	return dAtA[:n], nil
  5303  }
  5304  
  5305  func (m *TestUpdatedAuthInfo) MarshalTo(dAtA []byte) (int, error) {
  5306  	size := m.Size()
  5307  	return m.MarshalToSizedBuffer(dAtA[:size])
  5308  }
  5309  
  5310  func (m *TestUpdatedAuthInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5311  	i := len(dAtA)
  5312  	_ = i
  5313  	var l int
  5314  	_ = l
  5315  	if len(m.NewField_1024) > 0 {
  5316  		i -= len(m.NewField_1024)
  5317  		copy(dAtA[i:], m.NewField_1024)
  5318  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.NewField_1024)))
  5319  		i--
  5320  		dAtA[i] = 0x40
  5321  		i--
  5322  		dAtA[i] = 0x82
  5323  	}
  5324  	if len(m.NewField_3) > 0 {
  5325  		i -= len(m.NewField_3)
  5326  		copy(dAtA[i:], m.NewField_3)
  5327  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(len(m.NewField_3)))
  5328  		i--
  5329  		dAtA[i] = 0x1a
  5330  	}
  5331  	if m.Fee != nil {
  5332  		{
  5333  			size, err := m.Fee.MarshalToSizedBuffer(dAtA[:i])
  5334  			if err != nil {
  5335  				return 0, err
  5336  			}
  5337  			i -= size
  5338  			i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  5339  		}
  5340  		i--
  5341  		dAtA[i] = 0x12
  5342  	}
  5343  	if len(m.SignerInfos) > 0 {
  5344  		for iNdEx := len(m.SignerInfos) - 1; iNdEx >= 0; iNdEx-- {
  5345  			{
  5346  				size, err := m.SignerInfos[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  5347  				if err != nil {
  5348  					return 0, err
  5349  				}
  5350  				i -= size
  5351  				i = encodeVarintUnknonwnproto(dAtA, i, uint64(size))
  5352  			}
  5353  			i--
  5354  			dAtA[i] = 0xa
  5355  		}
  5356  	}
  5357  	return len(dAtA) - i, nil
  5358  }
  5359  
  5360  func (m *TestRepeatedUints) Marshal() (dAtA []byte, err error) {
  5361  	size := m.Size()
  5362  	dAtA = make([]byte, size)
  5363  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  5364  	if err != nil {
  5365  		return nil, err
  5366  	}
  5367  	return dAtA[:n], nil
  5368  }
  5369  
  5370  func (m *TestRepeatedUints) MarshalTo(dAtA []byte) (int, error) {
  5371  	size := m.Size()
  5372  	return m.MarshalToSizedBuffer(dAtA[:size])
  5373  }
  5374  
  5375  func (m *TestRepeatedUints) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  5376  	i := len(dAtA)
  5377  	_ = i
  5378  	var l int
  5379  	_ = l
  5380  	if len(m.Nums) > 0 {
  5381  		dAtA54 := make([]byte, len(m.Nums)*10)
  5382  		var j53 int
  5383  		for _, num := range m.Nums {
  5384  			for num >= 1<<7 {
  5385  				dAtA54[j53] = uint8(uint64(num)&0x7f | 0x80)
  5386  				num >>= 7
  5387  				j53++
  5388  			}
  5389  			dAtA54[j53] = uint8(num)
  5390  			j53++
  5391  		}
  5392  		i -= j53
  5393  		copy(dAtA[i:], dAtA54[:j53])
  5394  		i = encodeVarintUnknonwnproto(dAtA, i, uint64(j53))
  5395  		i--
  5396  		dAtA[i] = 0xa
  5397  	}
  5398  	return len(dAtA) - i, nil
  5399  }
  5400  
  5401  func encodeVarintUnknonwnproto(dAtA []byte, offset int, v uint64) int {
  5402  	offset -= sovUnknonwnproto(v)
  5403  	base := offset
  5404  	for v >= 1<<7 {
  5405  		dAtA[offset] = uint8(v&0x7f | 0x80)
  5406  		v >>= 7
  5407  		offset++
  5408  	}
  5409  	dAtA[offset] = uint8(v)
  5410  	return base
  5411  }
  5412  func (m *Customer1) Size() (n int) {
  5413  	if m == nil {
  5414  		return 0
  5415  	}
  5416  	var l int
  5417  	_ = l
  5418  	if m.Id != 0 {
  5419  		n += 1 + sovUnknonwnproto(uint64(m.Id))
  5420  	}
  5421  	l = len(m.Name)
  5422  	if l > 0 {
  5423  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5424  	}
  5425  	if m.SubscriptionFee != 0 {
  5426  		n += 5
  5427  	}
  5428  	l = len(m.Payment)
  5429  	if l > 0 {
  5430  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5431  	}
  5432  	return n
  5433  }
  5434  
  5435  func (m *Customer2) Size() (n int) {
  5436  	if m == nil {
  5437  		return 0
  5438  	}
  5439  	var l int
  5440  	_ = l
  5441  	if m.Id != 0 {
  5442  		n += 1 + sovUnknonwnproto(uint64(m.Id))
  5443  	}
  5444  	if m.Industry != 0 {
  5445  		n += 1 + sovUnknonwnproto(uint64(m.Industry))
  5446  	}
  5447  	l = len(m.Name)
  5448  	if l > 0 {
  5449  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5450  	}
  5451  	if m.Fewer != 0 {
  5452  		n += 5
  5453  	}
  5454  	if m.City != 0 {
  5455  		n += 1 + sovUnknonwnproto(uint64(m.City))
  5456  	}
  5457  	if m.Miscellaneous != nil {
  5458  		l = m.Miscellaneous.Size()
  5459  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5460  	}
  5461  	if m.Reserved != 0 {
  5462  		n += 2 + sovUnknonwnproto(uint64(m.Reserved))
  5463  	}
  5464  	return n
  5465  }
  5466  
  5467  func (m *Nested4A) Size() (n int) {
  5468  	if m == nil {
  5469  		return 0
  5470  	}
  5471  	var l int
  5472  	_ = l
  5473  	if m.Id != 0 {
  5474  		n += 1 + sovUnknonwnproto(uint64(m.Id))
  5475  	}
  5476  	l = len(m.Name)
  5477  	if l > 0 {
  5478  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5479  	}
  5480  	return n
  5481  }
  5482  
  5483  func (m *Nested3A) Size() (n int) {
  5484  	if m == nil {
  5485  		return 0
  5486  	}
  5487  	var l int
  5488  	_ = l
  5489  	if m.Id != 0 {
  5490  		n += 1 + sovUnknonwnproto(uint64(m.Id))
  5491  	}
  5492  	l = len(m.Name)
  5493  	if l > 0 {
  5494  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5495  	}
  5496  	if len(m.A4) > 0 {
  5497  		for _, e := range m.A4 {
  5498  			l = e.Size()
  5499  			n += 1 + l + sovUnknonwnproto(uint64(l))
  5500  		}
  5501  	}
  5502  	if len(m.Index) > 0 {
  5503  		for k, v := range m.Index {
  5504  			_ = k
  5505  			_ = v
  5506  			l = 0
  5507  			if v != nil {
  5508  				l = v.Size()
  5509  				l += 1 + sovUnknonwnproto(uint64(l))
  5510  			}
  5511  			mapEntrySize := 1 + sovUnknonwnproto(uint64(k)) + l
  5512  			n += mapEntrySize + 1 + sovUnknonwnproto(uint64(mapEntrySize))
  5513  		}
  5514  	}
  5515  	return n
  5516  }
  5517  
  5518  func (m *Nested2A) Size() (n int) {
  5519  	if m == nil {
  5520  		return 0
  5521  	}
  5522  	var l int
  5523  	_ = l
  5524  	if m.Id != 0 {
  5525  		n += 1 + sovUnknonwnproto(uint64(m.Id))
  5526  	}
  5527  	l = len(m.Name)
  5528  	if l > 0 {
  5529  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5530  	}
  5531  	if m.Nested != nil {
  5532  		l = m.Nested.Size()
  5533  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5534  	}
  5535  	return n
  5536  }
  5537  
  5538  func (m *Nested1A) Size() (n int) {
  5539  	if m == nil {
  5540  		return 0
  5541  	}
  5542  	var l int
  5543  	_ = l
  5544  	if m.Id != 0 {
  5545  		n += 1 + sovUnknonwnproto(uint64(m.Id))
  5546  	}
  5547  	if m.Nested != nil {
  5548  		l = m.Nested.Size()
  5549  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5550  	}
  5551  	return n
  5552  }
  5553  
  5554  func (m *Nested4B) Size() (n int) {
  5555  	if m == nil {
  5556  		return 0
  5557  	}
  5558  	var l int
  5559  	_ = l
  5560  	if m.Id != 0 {
  5561  		n += 1 + sovUnknonwnproto(uint64(m.Id))
  5562  	}
  5563  	if m.Age != 0 {
  5564  		n += 1 + sovUnknonwnproto(uint64(m.Age))
  5565  	}
  5566  	l = len(m.Name)
  5567  	if l > 0 {
  5568  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5569  	}
  5570  	return n
  5571  }
  5572  
  5573  func (m *Nested3B) Size() (n int) {
  5574  	if m == nil {
  5575  		return 0
  5576  	}
  5577  	var l int
  5578  	_ = l
  5579  	if m.Id != 0 {
  5580  		n += 1 + sovUnknonwnproto(uint64(m.Id))
  5581  	}
  5582  	if m.Age != 0 {
  5583  		n += 1 + sovUnknonwnproto(uint64(m.Age))
  5584  	}
  5585  	l = len(m.Name)
  5586  	if l > 0 {
  5587  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5588  	}
  5589  	if len(m.B4) > 0 {
  5590  		for _, e := range m.B4 {
  5591  			l = e.Size()
  5592  			n += 1 + l + sovUnknonwnproto(uint64(l))
  5593  		}
  5594  	}
  5595  	return n
  5596  }
  5597  
  5598  func (m *Nested2B) Size() (n int) {
  5599  	if m == nil {
  5600  		return 0
  5601  	}
  5602  	var l int
  5603  	_ = l
  5604  	if m.Id != 0 {
  5605  		n += 1 + sovUnknonwnproto(uint64(m.Id))
  5606  	}
  5607  	if m.Fee != 0 {
  5608  		n += 9
  5609  	}
  5610  	if m.Nested != nil {
  5611  		l = m.Nested.Size()
  5612  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5613  	}
  5614  	l = len(m.Route)
  5615  	if l > 0 {
  5616  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5617  	}
  5618  	return n
  5619  }
  5620  
  5621  func (m *Nested1B) Size() (n int) {
  5622  	if m == nil {
  5623  		return 0
  5624  	}
  5625  	var l int
  5626  	_ = l
  5627  	if m.Id != 0 {
  5628  		n += 1 + sovUnknonwnproto(uint64(m.Id))
  5629  	}
  5630  	if m.Nested != nil {
  5631  		l = m.Nested.Size()
  5632  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5633  	}
  5634  	if m.Age != 0 {
  5635  		n += 1 + sovUnknonwnproto(uint64(m.Age))
  5636  	}
  5637  	return n
  5638  }
  5639  
  5640  func (m *Customer3) Size() (n int) {
  5641  	if m == nil {
  5642  		return 0
  5643  	}
  5644  	var l int
  5645  	_ = l
  5646  	if m.Id != 0 {
  5647  		n += 1 + sovUnknonwnproto(uint64(m.Id))
  5648  	}
  5649  	l = len(m.Name)
  5650  	if l > 0 {
  5651  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5652  	}
  5653  	if m.Sf != 0 {
  5654  		n += 5
  5655  	}
  5656  	if m.Surcharge != 0 {
  5657  		n += 5
  5658  	}
  5659  	l = len(m.Destination)
  5660  	if l > 0 {
  5661  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5662  	}
  5663  	if m.Payment != nil {
  5664  		n += m.Payment.Size()
  5665  	}
  5666  	if m.Original != nil {
  5667  		l = m.Original.Size()
  5668  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5669  	}
  5670  	return n
  5671  }
  5672  
  5673  func (m *Customer3_CreditCardNo) Size() (n int) {
  5674  	if m == nil {
  5675  		return 0
  5676  	}
  5677  	var l int
  5678  	_ = l
  5679  	l = len(m.CreditCardNo)
  5680  	n += 1 + l + sovUnknonwnproto(uint64(l))
  5681  	return n
  5682  }
  5683  func (m *Customer3_ChequeNo) Size() (n int) {
  5684  	if m == nil {
  5685  		return 0
  5686  	}
  5687  	var l int
  5688  	_ = l
  5689  	l = len(m.ChequeNo)
  5690  	n += 1 + l + sovUnknonwnproto(uint64(l))
  5691  	return n
  5692  }
  5693  func (m *TestVersion1) Size() (n int) {
  5694  	if m == nil {
  5695  		return 0
  5696  	}
  5697  	var l int
  5698  	_ = l
  5699  	if m.X != 0 {
  5700  		n += 1 + sovUnknonwnproto(uint64(m.X))
  5701  	}
  5702  	if m.A != nil {
  5703  		l = m.A.Size()
  5704  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5705  	}
  5706  	if m.B != nil {
  5707  		l = m.B.Size()
  5708  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5709  	}
  5710  	if len(m.C) > 0 {
  5711  		for _, e := range m.C {
  5712  			l = e.Size()
  5713  			n += 1 + l + sovUnknonwnproto(uint64(l))
  5714  		}
  5715  	}
  5716  	if len(m.D) > 0 {
  5717  		for _, e := range m.D {
  5718  			l = e.Size()
  5719  			n += 1 + l + sovUnknonwnproto(uint64(l))
  5720  		}
  5721  	}
  5722  	if m.Sum != nil {
  5723  		n += m.Sum.Size()
  5724  	}
  5725  	if m.G != nil {
  5726  		l = m.G.Size()
  5727  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5728  	}
  5729  	if len(m.H) > 0 {
  5730  		for _, e := range m.H {
  5731  			l = e.Size()
  5732  			n += 1 + l + sovUnknonwnproto(uint64(l))
  5733  		}
  5734  	}
  5735  	if m.Customer1 != nil {
  5736  		l = m.Customer1.Size()
  5737  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5738  	}
  5739  	return n
  5740  }
  5741  
  5742  func (m *TestVersion1_E) Size() (n int) {
  5743  	if m == nil {
  5744  		return 0
  5745  	}
  5746  	var l int
  5747  	_ = l
  5748  	n += 1 + sovUnknonwnproto(uint64(m.E))
  5749  	return n
  5750  }
  5751  func (m *TestVersion1_F) Size() (n int) {
  5752  	if m == nil {
  5753  		return 0
  5754  	}
  5755  	var l int
  5756  	_ = l
  5757  	if m.F != nil {
  5758  		l = m.F.Size()
  5759  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5760  	}
  5761  	return n
  5762  }
  5763  func (m *TestVersion2) Size() (n int) {
  5764  	if m == nil {
  5765  		return 0
  5766  	}
  5767  	var l int
  5768  	_ = l
  5769  	if m.X != 0 {
  5770  		n += 1 + sovUnknonwnproto(uint64(m.X))
  5771  	}
  5772  	if m.A != nil {
  5773  		l = m.A.Size()
  5774  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5775  	}
  5776  	if m.B != nil {
  5777  		l = m.B.Size()
  5778  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5779  	}
  5780  	if len(m.C) > 0 {
  5781  		for _, e := range m.C {
  5782  			l = e.Size()
  5783  			n += 1 + l + sovUnknonwnproto(uint64(l))
  5784  		}
  5785  	}
  5786  	if len(m.D) > 0 {
  5787  		for _, e := range m.D {
  5788  			l = e.Size()
  5789  			n += 1 + l + sovUnknonwnproto(uint64(l))
  5790  		}
  5791  	}
  5792  	if m.Sum != nil {
  5793  		n += m.Sum.Size()
  5794  	}
  5795  	if m.G != nil {
  5796  		l = m.G.Size()
  5797  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5798  	}
  5799  	if len(m.H) > 0 {
  5800  		for _, e := range m.H {
  5801  			l = e.Size()
  5802  			n += 1 + l + sovUnknonwnproto(uint64(l))
  5803  		}
  5804  	}
  5805  	if m.Customer1 != nil {
  5806  		l = m.Customer1.Size()
  5807  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5808  	}
  5809  	if m.NewField != 0 {
  5810  		n += 2 + sovUnknonwnproto(uint64(m.NewField))
  5811  	}
  5812  	return n
  5813  }
  5814  
  5815  func (m *TestVersion2_E) Size() (n int) {
  5816  	if m == nil {
  5817  		return 0
  5818  	}
  5819  	var l int
  5820  	_ = l
  5821  	n += 1 + sovUnknonwnproto(uint64(m.E))
  5822  	return n
  5823  }
  5824  func (m *TestVersion2_F) Size() (n int) {
  5825  	if m == nil {
  5826  		return 0
  5827  	}
  5828  	var l int
  5829  	_ = l
  5830  	if m.F != nil {
  5831  		l = m.F.Size()
  5832  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5833  	}
  5834  	return n
  5835  }
  5836  func (m *TestVersion3) Size() (n int) {
  5837  	if m == nil {
  5838  		return 0
  5839  	}
  5840  	var l int
  5841  	_ = l
  5842  	if m.X != 0 {
  5843  		n += 1 + sovUnknonwnproto(uint64(m.X))
  5844  	}
  5845  	if m.A != nil {
  5846  		l = m.A.Size()
  5847  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5848  	}
  5849  	if m.B != nil {
  5850  		l = m.B.Size()
  5851  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5852  	}
  5853  	if len(m.C) > 0 {
  5854  		for _, e := range m.C {
  5855  			l = e.Size()
  5856  			n += 1 + l + sovUnknonwnproto(uint64(l))
  5857  		}
  5858  	}
  5859  	if len(m.D) > 0 {
  5860  		for _, e := range m.D {
  5861  			l = e.Size()
  5862  			n += 1 + l + sovUnknonwnproto(uint64(l))
  5863  		}
  5864  	}
  5865  	if m.Sum != nil {
  5866  		n += m.Sum.Size()
  5867  	}
  5868  	if m.G != nil {
  5869  		l = m.G.Size()
  5870  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5871  	}
  5872  	if len(m.H) > 0 {
  5873  		for _, e := range m.H {
  5874  			l = e.Size()
  5875  			n += 1 + l + sovUnknonwnproto(uint64(l))
  5876  		}
  5877  	}
  5878  	if m.Customer1 != nil {
  5879  		l = m.Customer1.Size()
  5880  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5881  	}
  5882  	l = len(m.NonCriticalField)
  5883  	if l > 0 {
  5884  		n += 2 + l + sovUnknonwnproto(uint64(l))
  5885  	}
  5886  	return n
  5887  }
  5888  
  5889  func (m *TestVersion3_E) Size() (n int) {
  5890  	if m == nil {
  5891  		return 0
  5892  	}
  5893  	var l int
  5894  	_ = l
  5895  	n += 1 + sovUnknonwnproto(uint64(m.E))
  5896  	return n
  5897  }
  5898  func (m *TestVersion3_F) Size() (n int) {
  5899  	if m == nil {
  5900  		return 0
  5901  	}
  5902  	var l int
  5903  	_ = l
  5904  	if m.F != nil {
  5905  		l = m.F.Size()
  5906  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5907  	}
  5908  	return n
  5909  }
  5910  func (m *TestVersion3LoneOneOfValue) Size() (n int) {
  5911  	if m == nil {
  5912  		return 0
  5913  	}
  5914  	var l int
  5915  	_ = l
  5916  	if m.X != 0 {
  5917  		n += 1 + sovUnknonwnproto(uint64(m.X))
  5918  	}
  5919  	if m.A != nil {
  5920  		l = m.A.Size()
  5921  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5922  	}
  5923  	if m.B != nil {
  5924  		l = m.B.Size()
  5925  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5926  	}
  5927  	if len(m.C) > 0 {
  5928  		for _, e := range m.C {
  5929  			l = e.Size()
  5930  			n += 1 + l + sovUnknonwnproto(uint64(l))
  5931  		}
  5932  	}
  5933  	if len(m.D) > 0 {
  5934  		for _, e := range m.D {
  5935  			l = e.Size()
  5936  			n += 1 + l + sovUnknonwnproto(uint64(l))
  5937  		}
  5938  	}
  5939  	if m.Sum != nil {
  5940  		n += m.Sum.Size()
  5941  	}
  5942  	if m.G != nil {
  5943  		l = m.G.Size()
  5944  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5945  	}
  5946  	if len(m.H) > 0 {
  5947  		for _, e := range m.H {
  5948  			l = e.Size()
  5949  			n += 1 + l + sovUnknonwnproto(uint64(l))
  5950  		}
  5951  	}
  5952  	if m.Customer1 != nil {
  5953  		l = m.Customer1.Size()
  5954  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5955  	}
  5956  	l = len(m.NonCriticalField)
  5957  	if l > 0 {
  5958  		n += 2 + l + sovUnknonwnproto(uint64(l))
  5959  	}
  5960  	return n
  5961  }
  5962  
  5963  func (m *TestVersion3LoneOneOfValue_E) Size() (n int) {
  5964  	if m == nil {
  5965  		return 0
  5966  	}
  5967  	var l int
  5968  	_ = l
  5969  	n += 1 + sovUnknonwnproto(uint64(m.E))
  5970  	return n
  5971  }
  5972  func (m *TestVersion3LoneNesting) Size() (n int) {
  5973  	if m == nil {
  5974  		return 0
  5975  	}
  5976  	var l int
  5977  	_ = l
  5978  	if m.X != 0 {
  5979  		n += 1 + sovUnknonwnproto(uint64(m.X))
  5980  	}
  5981  	if m.A != nil {
  5982  		l = m.A.Size()
  5983  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5984  	}
  5985  	if m.B != nil {
  5986  		l = m.B.Size()
  5987  		n += 1 + l + sovUnknonwnproto(uint64(l))
  5988  	}
  5989  	if len(m.C) > 0 {
  5990  		for _, e := range m.C {
  5991  			l = e.Size()
  5992  			n += 1 + l + sovUnknonwnproto(uint64(l))
  5993  		}
  5994  	}
  5995  	if len(m.D) > 0 {
  5996  		for _, e := range m.D {
  5997  			l = e.Size()
  5998  			n += 1 + l + sovUnknonwnproto(uint64(l))
  5999  		}
  6000  	}
  6001  	if m.Sum != nil {
  6002  		n += m.Sum.Size()
  6003  	}
  6004  	if m.G != nil {
  6005  		l = m.G.Size()
  6006  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6007  	}
  6008  	if len(m.H) > 0 {
  6009  		for _, e := range m.H {
  6010  			l = e.Size()
  6011  			n += 1 + l + sovUnknonwnproto(uint64(l))
  6012  		}
  6013  	}
  6014  	if m.Customer1 != nil {
  6015  		l = m.Customer1.Size()
  6016  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6017  	}
  6018  	if m.Inner1 != nil {
  6019  		l = m.Inner1.Size()
  6020  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6021  	}
  6022  	if m.Inner2 != nil {
  6023  		l = m.Inner2.Size()
  6024  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6025  	}
  6026  	l = len(m.NonCriticalField)
  6027  	if l > 0 {
  6028  		n += 2 + l + sovUnknonwnproto(uint64(l))
  6029  	}
  6030  	return n
  6031  }
  6032  
  6033  func (m *TestVersion3LoneNesting_F) Size() (n int) {
  6034  	if m == nil {
  6035  		return 0
  6036  	}
  6037  	var l int
  6038  	_ = l
  6039  	if m.F != nil {
  6040  		l = m.F.Size()
  6041  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6042  	}
  6043  	return n
  6044  }
  6045  func (m *TestVersion3LoneNesting_Inner1) Size() (n int) {
  6046  	if m == nil {
  6047  		return 0
  6048  	}
  6049  	var l int
  6050  	_ = l
  6051  	if m.Id != 0 {
  6052  		n += 1 + sovUnknonwnproto(uint64(m.Id))
  6053  	}
  6054  	l = len(m.Name)
  6055  	if l > 0 {
  6056  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6057  	}
  6058  	if m.Inner != nil {
  6059  		l = m.Inner.Size()
  6060  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6061  	}
  6062  	return n
  6063  }
  6064  
  6065  func (m *TestVersion3LoneNesting_Inner1_InnerInner) Size() (n int) {
  6066  	if m == nil {
  6067  		return 0
  6068  	}
  6069  	var l int
  6070  	_ = l
  6071  	l = len(m.Id)
  6072  	if l > 0 {
  6073  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6074  	}
  6075  	l = len(m.City)
  6076  	if l > 0 {
  6077  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6078  	}
  6079  	return n
  6080  }
  6081  
  6082  func (m *TestVersion3LoneNesting_Inner2) Size() (n int) {
  6083  	if m == nil {
  6084  		return 0
  6085  	}
  6086  	var l int
  6087  	_ = l
  6088  	l = len(m.Id)
  6089  	if l > 0 {
  6090  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6091  	}
  6092  	l = len(m.Country)
  6093  	if l > 0 {
  6094  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6095  	}
  6096  	if m.Inner != nil {
  6097  		l = m.Inner.Size()
  6098  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6099  	}
  6100  	return n
  6101  }
  6102  
  6103  func (m *TestVersion3LoneNesting_Inner2_InnerInner) Size() (n int) {
  6104  	if m == nil {
  6105  		return 0
  6106  	}
  6107  	var l int
  6108  	_ = l
  6109  	l = len(m.Id)
  6110  	if l > 0 {
  6111  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6112  	}
  6113  	l = len(m.City)
  6114  	if l > 0 {
  6115  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6116  	}
  6117  	return n
  6118  }
  6119  
  6120  func (m *TestVersion4LoneNesting) Size() (n int) {
  6121  	if m == nil {
  6122  		return 0
  6123  	}
  6124  	var l int
  6125  	_ = l
  6126  	if m.X != 0 {
  6127  		n += 1 + sovUnknonwnproto(uint64(m.X))
  6128  	}
  6129  	if m.A != nil {
  6130  		l = m.A.Size()
  6131  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6132  	}
  6133  	if m.B != nil {
  6134  		l = m.B.Size()
  6135  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6136  	}
  6137  	if len(m.C) > 0 {
  6138  		for _, e := range m.C {
  6139  			l = e.Size()
  6140  			n += 1 + l + sovUnknonwnproto(uint64(l))
  6141  		}
  6142  	}
  6143  	if len(m.D) > 0 {
  6144  		for _, e := range m.D {
  6145  			l = e.Size()
  6146  			n += 1 + l + sovUnknonwnproto(uint64(l))
  6147  		}
  6148  	}
  6149  	if m.Sum != nil {
  6150  		n += m.Sum.Size()
  6151  	}
  6152  	if m.G != nil {
  6153  		l = m.G.Size()
  6154  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6155  	}
  6156  	if len(m.H) > 0 {
  6157  		for _, e := range m.H {
  6158  			l = e.Size()
  6159  			n += 1 + l + sovUnknonwnproto(uint64(l))
  6160  		}
  6161  	}
  6162  	if m.Customer1 != nil {
  6163  		l = m.Customer1.Size()
  6164  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6165  	}
  6166  	if m.Inner1 != nil {
  6167  		l = m.Inner1.Size()
  6168  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6169  	}
  6170  	if m.Inner2 != nil {
  6171  		l = m.Inner2.Size()
  6172  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6173  	}
  6174  	l = len(m.NonCriticalField)
  6175  	if l > 0 {
  6176  		n += 2 + l + sovUnknonwnproto(uint64(l))
  6177  	}
  6178  	return n
  6179  }
  6180  
  6181  func (m *TestVersion4LoneNesting_F) Size() (n int) {
  6182  	if m == nil {
  6183  		return 0
  6184  	}
  6185  	var l int
  6186  	_ = l
  6187  	if m.F != nil {
  6188  		l = m.F.Size()
  6189  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6190  	}
  6191  	return n
  6192  }
  6193  func (m *TestVersion4LoneNesting_Inner1) Size() (n int) {
  6194  	if m == nil {
  6195  		return 0
  6196  	}
  6197  	var l int
  6198  	_ = l
  6199  	if m.Id != 0 {
  6200  		n += 1 + sovUnknonwnproto(uint64(m.Id))
  6201  	}
  6202  	l = len(m.Name)
  6203  	if l > 0 {
  6204  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6205  	}
  6206  	if m.Inner != nil {
  6207  		l = m.Inner.Size()
  6208  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6209  	}
  6210  	return n
  6211  }
  6212  
  6213  func (m *TestVersion4LoneNesting_Inner1_InnerInner) Size() (n int) {
  6214  	if m == nil {
  6215  		return 0
  6216  	}
  6217  	var l int
  6218  	_ = l
  6219  	if m.Id != 0 {
  6220  		n += 1 + sovUnknonwnproto(uint64(m.Id))
  6221  	}
  6222  	l = len(m.City)
  6223  	if l > 0 {
  6224  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6225  	}
  6226  	return n
  6227  }
  6228  
  6229  func (m *TestVersion4LoneNesting_Inner2) Size() (n int) {
  6230  	if m == nil {
  6231  		return 0
  6232  	}
  6233  	var l int
  6234  	_ = l
  6235  	l = len(m.Id)
  6236  	if l > 0 {
  6237  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6238  	}
  6239  	l = len(m.Country)
  6240  	if l > 0 {
  6241  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6242  	}
  6243  	if m.Inner != nil {
  6244  		l = m.Inner.Size()
  6245  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6246  	}
  6247  	return n
  6248  }
  6249  
  6250  func (m *TestVersion4LoneNesting_Inner2_InnerInner) Size() (n int) {
  6251  	if m == nil {
  6252  		return 0
  6253  	}
  6254  	var l int
  6255  	_ = l
  6256  	l = len(m.Id)
  6257  	if l > 0 {
  6258  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6259  	}
  6260  	if m.Value != 0 {
  6261  		n += 1 + sovUnknonwnproto(uint64(m.Value))
  6262  	}
  6263  	return n
  6264  }
  6265  
  6266  func (m *TestVersionFD1) Size() (n int) {
  6267  	if m == nil {
  6268  		return 0
  6269  	}
  6270  	var l int
  6271  	_ = l
  6272  	if m.X != 0 {
  6273  		n += 1 + sovUnknonwnproto(uint64(m.X))
  6274  	}
  6275  	if m.A != nil {
  6276  		l = m.A.Size()
  6277  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6278  	}
  6279  	if m.Sum != nil {
  6280  		n += m.Sum.Size()
  6281  	}
  6282  	if m.G != nil {
  6283  		l = m.G.Size()
  6284  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6285  	}
  6286  	if len(m.H) > 0 {
  6287  		for _, e := range m.H {
  6288  			l = e.Size()
  6289  			n += 1 + l + sovUnknonwnproto(uint64(l))
  6290  		}
  6291  	}
  6292  	return n
  6293  }
  6294  
  6295  func (m *TestVersionFD1_E) Size() (n int) {
  6296  	if m == nil {
  6297  		return 0
  6298  	}
  6299  	var l int
  6300  	_ = l
  6301  	n += 1 + sovUnknonwnproto(uint64(m.E))
  6302  	return n
  6303  }
  6304  func (m *TestVersionFD1_F) Size() (n int) {
  6305  	if m == nil {
  6306  		return 0
  6307  	}
  6308  	var l int
  6309  	_ = l
  6310  	if m.F != nil {
  6311  		l = m.F.Size()
  6312  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6313  	}
  6314  	return n
  6315  }
  6316  func (m *TestVersionFD1WithExtraAny) Size() (n int) {
  6317  	if m == nil {
  6318  		return 0
  6319  	}
  6320  	var l int
  6321  	_ = l
  6322  	if m.X != 0 {
  6323  		n += 1 + sovUnknonwnproto(uint64(m.X))
  6324  	}
  6325  	if m.A != nil {
  6326  		l = m.A.Size()
  6327  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6328  	}
  6329  	if m.Sum != nil {
  6330  		n += m.Sum.Size()
  6331  	}
  6332  	if m.G != nil {
  6333  		l = m.G.Size()
  6334  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6335  	}
  6336  	if len(m.H) > 0 {
  6337  		for _, e := range m.H {
  6338  			l = e.Size()
  6339  			n += 1 + l + sovUnknonwnproto(uint64(l))
  6340  		}
  6341  	}
  6342  	return n
  6343  }
  6344  
  6345  func (m *TestVersionFD1WithExtraAny_E) Size() (n int) {
  6346  	if m == nil {
  6347  		return 0
  6348  	}
  6349  	var l int
  6350  	_ = l
  6351  	n += 1 + sovUnknonwnproto(uint64(m.E))
  6352  	return n
  6353  }
  6354  func (m *TestVersionFD1WithExtraAny_F) Size() (n int) {
  6355  	if m == nil {
  6356  		return 0
  6357  	}
  6358  	var l int
  6359  	_ = l
  6360  	if m.F != nil {
  6361  		l = m.F.Size()
  6362  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6363  	}
  6364  	return n
  6365  }
  6366  func (m *AnyWithExtra) Size() (n int) {
  6367  	if m == nil {
  6368  		return 0
  6369  	}
  6370  	var l int
  6371  	_ = l
  6372  	if m.Any != nil {
  6373  		l = m.Any.Size()
  6374  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6375  	}
  6376  	if m.B != 0 {
  6377  		n += 1 + sovUnknonwnproto(uint64(m.B))
  6378  	}
  6379  	if m.C != 0 {
  6380  		n += 1 + sovUnknonwnproto(uint64(m.C))
  6381  	}
  6382  	return n
  6383  }
  6384  
  6385  func (m *TestUpdatedTxRaw) Size() (n int) {
  6386  	if m == nil {
  6387  		return 0
  6388  	}
  6389  	var l int
  6390  	_ = l
  6391  	l = len(m.BodyBytes)
  6392  	if l > 0 {
  6393  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6394  	}
  6395  	l = len(m.AuthInfoBytes)
  6396  	if l > 0 {
  6397  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6398  	}
  6399  	if len(m.Signatures) > 0 {
  6400  		for _, b := range m.Signatures {
  6401  			l = len(b)
  6402  			n += 1 + l + sovUnknonwnproto(uint64(l))
  6403  		}
  6404  	}
  6405  	l = len(m.NewField_5)
  6406  	if l > 0 {
  6407  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6408  	}
  6409  	l = len(m.NewField_1024)
  6410  	if l > 0 {
  6411  		n += 2 + l + sovUnknonwnproto(uint64(l))
  6412  	}
  6413  	return n
  6414  }
  6415  
  6416  func (m *TestUpdatedTxBody) Size() (n int) {
  6417  	if m == nil {
  6418  		return 0
  6419  	}
  6420  	var l int
  6421  	_ = l
  6422  	if len(m.Messages) > 0 {
  6423  		for _, e := range m.Messages {
  6424  			l = e.Size()
  6425  			n += 1 + l + sovUnknonwnproto(uint64(l))
  6426  		}
  6427  	}
  6428  	l = len(m.Memo)
  6429  	if l > 0 {
  6430  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6431  	}
  6432  	if m.TimeoutHeight != 0 {
  6433  		n += 1 + sovUnknonwnproto(uint64(m.TimeoutHeight))
  6434  	}
  6435  	if m.SomeNewField != 0 {
  6436  		n += 1 + sovUnknonwnproto(uint64(m.SomeNewField))
  6437  	}
  6438  	if len(m.ExtensionOptions) > 0 {
  6439  		for _, e := range m.ExtensionOptions {
  6440  			l = e.Size()
  6441  			n += 2 + l + sovUnknonwnproto(uint64(l))
  6442  		}
  6443  	}
  6444  	l = len(m.SomeNewFieldNonCriticalField)
  6445  	if l > 0 {
  6446  		n += 2 + l + sovUnknonwnproto(uint64(l))
  6447  	}
  6448  	if len(m.NonCriticalExtensionOptions) > 0 {
  6449  		for _, e := range m.NonCriticalExtensionOptions {
  6450  			l = e.Size()
  6451  			n += 2 + l + sovUnknonwnproto(uint64(l))
  6452  		}
  6453  	}
  6454  	return n
  6455  }
  6456  
  6457  func (m *TestUpdatedAuthInfo) Size() (n int) {
  6458  	if m == nil {
  6459  		return 0
  6460  	}
  6461  	var l int
  6462  	_ = l
  6463  	if len(m.SignerInfos) > 0 {
  6464  		for _, e := range m.SignerInfos {
  6465  			l = e.Size()
  6466  			n += 1 + l + sovUnknonwnproto(uint64(l))
  6467  		}
  6468  	}
  6469  	if m.Fee != nil {
  6470  		l = m.Fee.Size()
  6471  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6472  	}
  6473  	l = len(m.NewField_3)
  6474  	if l > 0 {
  6475  		n += 1 + l + sovUnknonwnproto(uint64(l))
  6476  	}
  6477  	l = len(m.NewField_1024)
  6478  	if l > 0 {
  6479  		n += 2 + l + sovUnknonwnproto(uint64(l))
  6480  	}
  6481  	return n
  6482  }
  6483  
  6484  func (m *TestRepeatedUints) Size() (n int) {
  6485  	if m == nil {
  6486  		return 0
  6487  	}
  6488  	var l int
  6489  	_ = l
  6490  	if len(m.Nums) > 0 {
  6491  		l = 0
  6492  		for _, e := range m.Nums {
  6493  			l += sovUnknonwnproto(uint64(e))
  6494  		}
  6495  		n += 1 + sovUnknonwnproto(uint64(l)) + l
  6496  	}
  6497  	return n
  6498  }
  6499  
  6500  func sovUnknonwnproto(x uint64) (n int) {
  6501  	return (math_bits.Len64(x|1) + 6) / 7
  6502  }
  6503  func sozUnknonwnproto(x uint64) (n int) {
  6504  	return sovUnknonwnproto(uint64((x << 1) ^ uint64((int64(x) >> 63))))
  6505  }
  6506  func (m *Customer1) Unmarshal(dAtA []byte) error {
  6507  	l := len(dAtA)
  6508  	iNdEx := 0
  6509  	for iNdEx < l {
  6510  		preIndex := iNdEx
  6511  		var wire uint64
  6512  		for shift := uint(0); ; shift += 7 {
  6513  			if shift >= 64 {
  6514  				return ErrIntOverflowUnknonwnproto
  6515  			}
  6516  			if iNdEx >= l {
  6517  				return io.ErrUnexpectedEOF
  6518  			}
  6519  			b := dAtA[iNdEx]
  6520  			iNdEx++
  6521  			wire |= uint64(b&0x7F) << shift
  6522  			if b < 0x80 {
  6523  				break
  6524  			}
  6525  		}
  6526  		fieldNum := int32(wire >> 3)
  6527  		wireType := int(wire & 0x7)
  6528  		if wireType == 4 {
  6529  			return fmt.Errorf("proto: Customer1: wiretype end group for non-group")
  6530  		}
  6531  		if fieldNum <= 0 {
  6532  			return fmt.Errorf("proto: Customer1: illegal tag %d (wire type %d)", fieldNum, wire)
  6533  		}
  6534  		switch fieldNum {
  6535  		case 1:
  6536  			if wireType != 0 {
  6537  				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
  6538  			}
  6539  			m.Id = 0
  6540  			for shift := uint(0); ; shift += 7 {
  6541  				if shift >= 64 {
  6542  					return ErrIntOverflowUnknonwnproto
  6543  				}
  6544  				if iNdEx >= l {
  6545  					return io.ErrUnexpectedEOF
  6546  				}
  6547  				b := dAtA[iNdEx]
  6548  				iNdEx++
  6549  				m.Id |= int32(b&0x7F) << shift
  6550  				if b < 0x80 {
  6551  					break
  6552  				}
  6553  			}
  6554  		case 2:
  6555  			if wireType != 2 {
  6556  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
  6557  			}
  6558  			var stringLen uint64
  6559  			for shift := uint(0); ; shift += 7 {
  6560  				if shift >= 64 {
  6561  					return ErrIntOverflowUnknonwnproto
  6562  				}
  6563  				if iNdEx >= l {
  6564  					return io.ErrUnexpectedEOF
  6565  				}
  6566  				b := dAtA[iNdEx]
  6567  				iNdEx++
  6568  				stringLen |= uint64(b&0x7F) << shift
  6569  				if b < 0x80 {
  6570  					break
  6571  				}
  6572  			}
  6573  			intStringLen := int(stringLen)
  6574  			if intStringLen < 0 {
  6575  				return ErrInvalidLengthUnknonwnproto
  6576  			}
  6577  			postIndex := iNdEx + intStringLen
  6578  			if postIndex < 0 {
  6579  				return ErrInvalidLengthUnknonwnproto
  6580  			}
  6581  			if postIndex > l {
  6582  				return io.ErrUnexpectedEOF
  6583  			}
  6584  			m.Name = string(dAtA[iNdEx:postIndex])
  6585  			iNdEx = postIndex
  6586  		case 3:
  6587  			if wireType != 5 {
  6588  				return fmt.Errorf("proto: wrong wireType = %d for field SubscriptionFee", wireType)
  6589  			}
  6590  			var v uint32
  6591  			if (iNdEx + 4) > l {
  6592  				return io.ErrUnexpectedEOF
  6593  			}
  6594  			v = uint32(encoding_binary.LittleEndian.Uint32(dAtA[iNdEx:]))
  6595  			iNdEx += 4
  6596  			m.SubscriptionFee = float32(math.Float32frombits(v))
  6597  		case 7:
  6598  			if wireType != 2 {
  6599  				return fmt.Errorf("proto: wrong wireType = %d for field Payment", wireType)
  6600  			}
  6601  			var stringLen uint64
  6602  			for shift := uint(0); ; shift += 7 {
  6603  				if shift >= 64 {
  6604  					return ErrIntOverflowUnknonwnproto
  6605  				}
  6606  				if iNdEx >= l {
  6607  					return io.ErrUnexpectedEOF
  6608  				}
  6609  				b := dAtA[iNdEx]
  6610  				iNdEx++
  6611  				stringLen |= uint64(b&0x7F) << shift
  6612  				if b < 0x80 {
  6613  					break
  6614  				}
  6615  			}
  6616  			intStringLen := int(stringLen)
  6617  			if intStringLen < 0 {
  6618  				return ErrInvalidLengthUnknonwnproto
  6619  			}
  6620  			postIndex := iNdEx + intStringLen
  6621  			if postIndex < 0 {
  6622  				return ErrInvalidLengthUnknonwnproto
  6623  			}
  6624  			if postIndex > l {
  6625  				return io.ErrUnexpectedEOF
  6626  			}
  6627  			m.Payment = string(dAtA[iNdEx:postIndex])
  6628  			iNdEx = postIndex
  6629  		default:
  6630  			iNdEx = preIndex
  6631  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
  6632  			if err != nil {
  6633  				return err
  6634  			}
  6635  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  6636  				return ErrInvalidLengthUnknonwnproto
  6637  			}
  6638  			if (iNdEx + skippy) > l {
  6639  				return io.ErrUnexpectedEOF
  6640  			}
  6641  			iNdEx += skippy
  6642  		}
  6643  	}
  6644  
  6645  	if iNdEx > l {
  6646  		return io.ErrUnexpectedEOF
  6647  	}
  6648  	return nil
  6649  }
  6650  func (m *Customer2) Unmarshal(dAtA []byte) error {
  6651  	l := len(dAtA)
  6652  	iNdEx := 0
  6653  	for iNdEx < l {
  6654  		preIndex := iNdEx
  6655  		var wire uint64
  6656  		for shift := uint(0); ; shift += 7 {
  6657  			if shift >= 64 {
  6658  				return ErrIntOverflowUnknonwnproto
  6659  			}
  6660  			if iNdEx >= l {
  6661  				return io.ErrUnexpectedEOF
  6662  			}
  6663  			b := dAtA[iNdEx]
  6664  			iNdEx++
  6665  			wire |= uint64(b&0x7F) << shift
  6666  			if b < 0x80 {
  6667  				break
  6668  			}
  6669  		}
  6670  		fieldNum := int32(wire >> 3)
  6671  		wireType := int(wire & 0x7)
  6672  		if wireType == 4 {
  6673  			return fmt.Errorf("proto: Customer2: wiretype end group for non-group")
  6674  		}
  6675  		if fieldNum <= 0 {
  6676  			return fmt.Errorf("proto: Customer2: illegal tag %d (wire type %d)", fieldNum, wire)
  6677  		}
  6678  		switch fieldNum {
  6679  		case 1:
  6680  			if wireType != 0 {
  6681  				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
  6682  			}
  6683  			m.Id = 0
  6684  			for shift := uint(0); ; shift += 7 {
  6685  				if shift >= 64 {
  6686  					return ErrIntOverflowUnknonwnproto
  6687  				}
  6688  				if iNdEx >= l {
  6689  					return io.ErrUnexpectedEOF
  6690  				}
  6691  				b := dAtA[iNdEx]
  6692  				iNdEx++
  6693  				m.Id |= int32(b&0x7F) << shift
  6694  				if b < 0x80 {
  6695  					break
  6696  				}
  6697  			}
  6698  		case 2:
  6699  			if wireType != 0 {
  6700  				return fmt.Errorf("proto: wrong wireType = %d for field Industry", wireType)
  6701  			}
  6702  			m.Industry = 0
  6703  			for shift := uint(0); ; shift += 7 {
  6704  				if shift >= 64 {
  6705  					return ErrIntOverflowUnknonwnproto
  6706  				}
  6707  				if iNdEx >= l {
  6708  					return io.ErrUnexpectedEOF
  6709  				}
  6710  				b := dAtA[iNdEx]
  6711  				iNdEx++
  6712  				m.Industry |= int32(b&0x7F) << shift
  6713  				if b < 0x80 {
  6714  					break
  6715  				}
  6716  			}
  6717  		case 3:
  6718  			if wireType != 2 {
  6719  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
  6720  			}
  6721  			var stringLen uint64
  6722  			for shift := uint(0); ; shift += 7 {
  6723  				if shift >= 64 {
  6724  					return ErrIntOverflowUnknonwnproto
  6725  				}
  6726  				if iNdEx >= l {
  6727  					return io.ErrUnexpectedEOF
  6728  				}
  6729  				b := dAtA[iNdEx]
  6730  				iNdEx++
  6731  				stringLen |= uint64(b&0x7F) << shift
  6732  				if b < 0x80 {
  6733  					break
  6734  				}
  6735  			}
  6736  			intStringLen := int(stringLen)
  6737  			if intStringLen < 0 {
  6738  				return ErrInvalidLengthUnknonwnproto
  6739  			}
  6740  			postIndex := iNdEx + intStringLen
  6741  			if postIndex < 0 {
  6742  				return ErrInvalidLengthUnknonwnproto
  6743  			}
  6744  			if postIndex > l {
  6745  				return io.ErrUnexpectedEOF
  6746  			}
  6747  			m.Name = string(dAtA[iNdEx:postIndex])
  6748  			iNdEx = postIndex
  6749  		case 4:
  6750  			if wireType != 5 {
  6751  				return fmt.Errorf("proto: wrong wireType = %d for field Fewer", wireType)
  6752  			}
  6753  			var v uint32
  6754  			if (iNdEx + 4) > l {
  6755  				return io.ErrUnexpectedEOF
  6756  			}
  6757  			v = uint32(encoding_binary.LittleEndian.Uint32(dAtA[iNdEx:]))
  6758  			iNdEx += 4
  6759  			m.Fewer = float32(math.Float32frombits(v))
  6760  		case 6:
  6761  			if wireType != 0 {
  6762  				return fmt.Errorf("proto: wrong wireType = %d for field City", wireType)
  6763  			}
  6764  			m.City = 0
  6765  			for shift := uint(0); ; shift += 7 {
  6766  				if shift >= 64 {
  6767  					return ErrIntOverflowUnknonwnproto
  6768  				}
  6769  				if iNdEx >= l {
  6770  					return io.ErrUnexpectedEOF
  6771  				}
  6772  				b := dAtA[iNdEx]
  6773  				iNdEx++
  6774  				m.City |= Customer2_City(b&0x7F) << shift
  6775  				if b < 0x80 {
  6776  					break
  6777  				}
  6778  			}
  6779  		case 10:
  6780  			if wireType != 2 {
  6781  				return fmt.Errorf("proto: wrong wireType = %d for field Miscellaneous", wireType)
  6782  			}
  6783  			var msglen int
  6784  			for shift := uint(0); ; shift += 7 {
  6785  				if shift >= 64 {
  6786  					return ErrIntOverflowUnknonwnproto
  6787  				}
  6788  				if iNdEx >= l {
  6789  					return io.ErrUnexpectedEOF
  6790  				}
  6791  				b := dAtA[iNdEx]
  6792  				iNdEx++
  6793  				msglen |= int(b&0x7F) << shift
  6794  				if b < 0x80 {
  6795  					break
  6796  				}
  6797  			}
  6798  			if msglen < 0 {
  6799  				return ErrInvalidLengthUnknonwnproto
  6800  			}
  6801  			postIndex := iNdEx + msglen
  6802  			if postIndex < 0 {
  6803  				return ErrInvalidLengthUnknonwnproto
  6804  			}
  6805  			if postIndex > l {
  6806  				return io.ErrUnexpectedEOF
  6807  			}
  6808  			if m.Miscellaneous == nil {
  6809  				m.Miscellaneous = &types.Any{}
  6810  			}
  6811  			if err := m.Miscellaneous.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6812  				return err
  6813  			}
  6814  			iNdEx = postIndex
  6815  		case 1047:
  6816  			if wireType != 0 {
  6817  				return fmt.Errorf("proto: wrong wireType = %d for field Reserved", wireType)
  6818  			}
  6819  			m.Reserved = 0
  6820  			for shift := uint(0); ; shift += 7 {
  6821  				if shift >= 64 {
  6822  					return ErrIntOverflowUnknonwnproto
  6823  				}
  6824  				if iNdEx >= l {
  6825  					return io.ErrUnexpectedEOF
  6826  				}
  6827  				b := dAtA[iNdEx]
  6828  				iNdEx++
  6829  				m.Reserved |= int64(b&0x7F) << shift
  6830  				if b < 0x80 {
  6831  					break
  6832  				}
  6833  			}
  6834  		default:
  6835  			iNdEx = preIndex
  6836  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
  6837  			if err != nil {
  6838  				return err
  6839  			}
  6840  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  6841  				return ErrInvalidLengthUnknonwnproto
  6842  			}
  6843  			if (iNdEx + skippy) > l {
  6844  				return io.ErrUnexpectedEOF
  6845  			}
  6846  			iNdEx += skippy
  6847  		}
  6848  	}
  6849  
  6850  	if iNdEx > l {
  6851  		return io.ErrUnexpectedEOF
  6852  	}
  6853  	return nil
  6854  }
  6855  func (m *Nested4A) Unmarshal(dAtA []byte) error {
  6856  	l := len(dAtA)
  6857  	iNdEx := 0
  6858  	for iNdEx < l {
  6859  		preIndex := iNdEx
  6860  		var wire uint64
  6861  		for shift := uint(0); ; shift += 7 {
  6862  			if shift >= 64 {
  6863  				return ErrIntOverflowUnknonwnproto
  6864  			}
  6865  			if iNdEx >= l {
  6866  				return io.ErrUnexpectedEOF
  6867  			}
  6868  			b := dAtA[iNdEx]
  6869  			iNdEx++
  6870  			wire |= uint64(b&0x7F) << shift
  6871  			if b < 0x80 {
  6872  				break
  6873  			}
  6874  		}
  6875  		fieldNum := int32(wire >> 3)
  6876  		wireType := int(wire & 0x7)
  6877  		if wireType == 4 {
  6878  			return fmt.Errorf("proto: Nested4A: wiretype end group for non-group")
  6879  		}
  6880  		if fieldNum <= 0 {
  6881  			return fmt.Errorf("proto: Nested4A: illegal tag %d (wire type %d)", fieldNum, wire)
  6882  		}
  6883  		switch fieldNum {
  6884  		case 1:
  6885  			if wireType != 0 {
  6886  				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
  6887  			}
  6888  			m.Id = 0
  6889  			for shift := uint(0); ; shift += 7 {
  6890  				if shift >= 64 {
  6891  					return ErrIntOverflowUnknonwnproto
  6892  				}
  6893  				if iNdEx >= l {
  6894  					return io.ErrUnexpectedEOF
  6895  				}
  6896  				b := dAtA[iNdEx]
  6897  				iNdEx++
  6898  				m.Id |= int32(b&0x7F) << shift
  6899  				if b < 0x80 {
  6900  					break
  6901  				}
  6902  			}
  6903  		case 2:
  6904  			if wireType != 2 {
  6905  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
  6906  			}
  6907  			var stringLen uint64
  6908  			for shift := uint(0); ; shift += 7 {
  6909  				if shift >= 64 {
  6910  					return ErrIntOverflowUnknonwnproto
  6911  				}
  6912  				if iNdEx >= l {
  6913  					return io.ErrUnexpectedEOF
  6914  				}
  6915  				b := dAtA[iNdEx]
  6916  				iNdEx++
  6917  				stringLen |= uint64(b&0x7F) << shift
  6918  				if b < 0x80 {
  6919  					break
  6920  				}
  6921  			}
  6922  			intStringLen := int(stringLen)
  6923  			if intStringLen < 0 {
  6924  				return ErrInvalidLengthUnknonwnproto
  6925  			}
  6926  			postIndex := iNdEx + intStringLen
  6927  			if postIndex < 0 {
  6928  				return ErrInvalidLengthUnknonwnproto
  6929  			}
  6930  			if postIndex > l {
  6931  				return io.ErrUnexpectedEOF
  6932  			}
  6933  			m.Name = string(dAtA[iNdEx:postIndex])
  6934  			iNdEx = postIndex
  6935  		default:
  6936  			iNdEx = preIndex
  6937  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
  6938  			if err != nil {
  6939  				return err
  6940  			}
  6941  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  6942  				return ErrInvalidLengthUnknonwnproto
  6943  			}
  6944  			if (iNdEx + skippy) > l {
  6945  				return io.ErrUnexpectedEOF
  6946  			}
  6947  			iNdEx += skippy
  6948  		}
  6949  	}
  6950  
  6951  	if iNdEx > l {
  6952  		return io.ErrUnexpectedEOF
  6953  	}
  6954  	return nil
  6955  }
  6956  func (m *Nested3A) Unmarshal(dAtA []byte) error {
  6957  	l := len(dAtA)
  6958  	iNdEx := 0
  6959  	for iNdEx < l {
  6960  		preIndex := iNdEx
  6961  		var wire uint64
  6962  		for shift := uint(0); ; shift += 7 {
  6963  			if shift >= 64 {
  6964  				return ErrIntOverflowUnknonwnproto
  6965  			}
  6966  			if iNdEx >= l {
  6967  				return io.ErrUnexpectedEOF
  6968  			}
  6969  			b := dAtA[iNdEx]
  6970  			iNdEx++
  6971  			wire |= uint64(b&0x7F) << shift
  6972  			if b < 0x80 {
  6973  				break
  6974  			}
  6975  		}
  6976  		fieldNum := int32(wire >> 3)
  6977  		wireType := int(wire & 0x7)
  6978  		if wireType == 4 {
  6979  			return fmt.Errorf("proto: Nested3A: wiretype end group for non-group")
  6980  		}
  6981  		if fieldNum <= 0 {
  6982  			return fmt.Errorf("proto: Nested3A: illegal tag %d (wire type %d)", fieldNum, wire)
  6983  		}
  6984  		switch fieldNum {
  6985  		case 1:
  6986  			if wireType != 0 {
  6987  				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
  6988  			}
  6989  			m.Id = 0
  6990  			for shift := uint(0); ; shift += 7 {
  6991  				if shift >= 64 {
  6992  					return ErrIntOverflowUnknonwnproto
  6993  				}
  6994  				if iNdEx >= l {
  6995  					return io.ErrUnexpectedEOF
  6996  				}
  6997  				b := dAtA[iNdEx]
  6998  				iNdEx++
  6999  				m.Id |= int32(b&0x7F) << shift
  7000  				if b < 0x80 {
  7001  					break
  7002  				}
  7003  			}
  7004  		case 2:
  7005  			if wireType != 2 {
  7006  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
  7007  			}
  7008  			var stringLen uint64
  7009  			for shift := uint(0); ; shift += 7 {
  7010  				if shift >= 64 {
  7011  					return ErrIntOverflowUnknonwnproto
  7012  				}
  7013  				if iNdEx >= l {
  7014  					return io.ErrUnexpectedEOF
  7015  				}
  7016  				b := dAtA[iNdEx]
  7017  				iNdEx++
  7018  				stringLen |= uint64(b&0x7F) << shift
  7019  				if b < 0x80 {
  7020  					break
  7021  				}
  7022  			}
  7023  			intStringLen := int(stringLen)
  7024  			if intStringLen < 0 {
  7025  				return ErrInvalidLengthUnknonwnproto
  7026  			}
  7027  			postIndex := iNdEx + intStringLen
  7028  			if postIndex < 0 {
  7029  				return ErrInvalidLengthUnknonwnproto
  7030  			}
  7031  			if postIndex > l {
  7032  				return io.ErrUnexpectedEOF
  7033  			}
  7034  			m.Name = string(dAtA[iNdEx:postIndex])
  7035  			iNdEx = postIndex
  7036  		case 4:
  7037  			if wireType != 2 {
  7038  				return fmt.Errorf("proto: wrong wireType = %d for field A4", wireType)
  7039  			}
  7040  			var msglen int
  7041  			for shift := uint(0); ; shift += 7 {
  7042  				if shift >= 64 {
  7043  					return ErrIntOverflowUnknonwnproto
  7044  				}
  7045  				if iNdEx >= l {
  7046  					return io.ErrUnexpectedEOF
  7047  				}
  7048  				b := dAtA[iNdEx]
  7049  				iNdEx++
  7050  				msglen |= int(b&0x7F) << shift
  7051  				if b < 0x80 {
  7052  					break
  7053  				}
  7054  			}
  7055  			if msglen < 0 {
  7056  				return ErrInvalidLengthUnknonwnproto
  7057  			}
  7058  			postIndex := iNdEx + msglen
  7059  			if postIndex < 0 {
  7060  				return ErrInvalidLengthUnknonwnproto
  7061  			}
  7062  			if postIndex > l {
  7063  				return io.ErrUnexpectedEOF
  7064  			}
  7065  			m.A4 = append(m.A4, &Nested4A{})
  7066  			if err := m.A4[len(m.A4)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7067  				return err
  7068  			}
  7069  			iNdEx = postIndex
  7070  		case 5:
  7071  			if wireType != 2 {
  7072  				return fmt.Errorf("proto: wrong wireType = %d for field Index", wireType)
  7073  			}
  7074  			var msglen int
  7075  			for shift := uint(0); ; shift += 7 {
  7076  				if shift >= 64 {
  7077  					return ErrIntOverflowUnknonwnproto
  7078  				}
  7079  				if iNdEx >= l {
  7080  					return io.ErrUnexpectedEOF
  7081  				}
  7082  				b := dAtA[iNdEx]
  7083  				iNdEx++
  7084  				msglen |= int(b&0x7F) << shift
  7085  				if b < 0x80 {
  7086  					break
  7087  				}
  7088  			}
  7089  			if msglen < 0 {
  7090  				return ErrInvalidLengthUnknonwnproto
  7091  			}
  7092  			postIndex := iNdEx + msglen
  7093  			if postIndex < 0 {
  7094  				return ErrInvalidLengthUnknonwnproto
  7095  			}
  7096  			if postIndex > l {
  7097  				return io.ErrUnexpectedEOF
  7098  			}
  7099  			if m.Index == nil {
  7100  				m.Index = make(map[int64]*Nested4A)
  7101  			}
  7102  			var mapkey int64
  7103  			var mapvalue *Nested4A
  7104  			for iNdEx < postIndex {
  7105  				entryPreIndex := iNdEx
  7106  				var wire uint64
  7107  				for shift := uint(0); ; shift += 7 {
  7108  					if shift >= 64 {
  7109  						return ErrIntOverflowUnknonwnproto
  7110  					}
  7111  					if iNdEx >= l {
  7112  						return io.ErrUnexpectedEOF
  7113  					}
  7114  					b := dAtA[iNdEx]
  7115  					iNdEx++
  7116  					wire |= uint64(b&0x7F) << shift
  7117  					if b < 0x80 {
  7118  						break
  7119  					}
  7120  				}
  7121  				fieldNum := int32(wire >> 3)
  7122  				if fieldNum == 1 {
  7123  					for shift := uint(0); ; shift += 7 {
  7124  						if shift >= 64 {
  7125  							return ErrIntOverflowUnknonwnproto
  7126  						}
  7127  						if iNdEx >= l {
  7128  							return io.ErrUnexpectedEOF
  7129  						}
  7130  						b := dAtA[iNdEx]
  7131  						iNdEx++
  7132  						mapkey |= int64(b&0x7F) << shift
  7133  						if b < 0x80 {
  7134  							break
  7135  						}
  7136  					}
  7137  				} else if fieldNum == 2 {
  7138  					var mapmsglen int
  7139  					for shift := uint(0); ; shift += 7 {
  7140  						if shift >= 64 {
  7141  							return ErrIntOverflowUnknonwnproto
  7142  						}
  7143  						if iNdEx >= l {
  7144  							return io.ErrUnexpectedEOF
  7145  						}
  7146  						b := dAtA[iNdEx]
  7147  						iNdEx++
  7148  						mapmsglen |= int(b&0x7F) << shift
  7149  						if b < 0x80 {
  7150  							break
  7151  						}
  7152  					}
  7153  					if mapmsglen < 0 {
  7154  						return ErrInvalidLengthUnknonwnproto
  7155  					}
  7156  					postmsgIndex := iNdEx + mapmsglen
  7157  					if postmsgIndex < 0 {
  7158  						return ErrInvalidLengthUnknonwnproto
  7159  					}
  7160  					if postmsgIndex > l {
  7161  						return io.ErrUnexpectedEOF
  7162  					}
  7163  					mapvalue = &Nested4A{}
  7164  					if err := mapvalue.Unmarshal(dAtA[iNdEx:postmsgIndex]); err != nil {
  7165  						return err
  7166  					}
  7167  					iNdEx = postmsgIndex
  7168  				} else {
  7169  					iNdEx = entryPreIndex
  7170  					skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
  7171  					if err != nil {
  7172  						return err
  7173  					}
  7174  					if (skippy < 0) || (iNdEx+skippy) < 0 {
  7175  						return ErrInvalidLengthUnknonwnproto
  7176  					}
  7177  					if (iNdEx + skippy) > postIndex {
  7178  						return io.ErrUnexpectedEOF
  7179  					}
  7180  					iNdEx += skippy
  7181  				}
  7182  			}
  7183  			m.Index[mapkey] = mapvalue
  7184  			iNdEx = postIndex
  7185  		default:
  7186  			iNdEx = preIndex
  7187  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
  7188  			if err != nil {
  7189  				return err
  7190  			}
  7191  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  7192  				return ErrInvalidLengthUnknonwnproto
  7193  			}
  7194  			if (iNdEx + skippy) > l {
  7195  				return io.ErrUnexpectedEOF
  7196  			}
  7197  			iNdEx += skippy
  7198  		}
  7199  	}
  7200  
  7201  	if iNdEx > l {
  7202  		return io.ErrUnexpectedEOF
  7203  	}
  7204  	return nil
  7205  }
  7206  func (m *Nested2A) Unmarshal(dAtA []byte) error {
  7207  	l := len(dAtA)
  7208  	iNdEx := 0
  7209  	for iNdEx < l {
  7210  		preIndex := iNdEx
  7211  		var wire uint64
  7212  		for shift := uint(0); ; shift += 7 {
  7213  			if shift >= 64 {
  7214  				return ErrIntOverflowUnknonwnproto
  7215  			}
  7216  			if iNdEx >= l {
  7217  				return io.ErrUnexpectedEOF
  7218  			}
  7219  			b := dAtA[iNdEx]
  7220  			iNdEx++
  7221  			wire |= uint64(b&0x7F) << shift
  7222  			if b < 0x80 {
  7223  				break
  7224  			}
  7225  		}
  7226  		fieldNum := int32(wire >> 3)
  7227  		wireType := int(wire & 0x7)
  7228  		if wireType == 4 {
  7229  			return fmt.Errorf("proto: Nested2A: wiretype end group for non-group")
  7230  		}
  7231  		if fieldNum <= 0 {
  7232  			return fmt.Errorf("proto: Nested2A: illegal tag %d (wire type %d)", fieldNum, wire)
  7233  		}
  7234  		switch fieldNum {
  7235  		case 1:
  7236  			if wireType != 0 {
  7237  				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
  7238  			}
  7239  			m.Id = 0
  7240  			for shift := uint(0); ; shift += 7 {
  7241  				if shift >= 64 {
  7242  					return ErrIntOverflowUnknonwnproto
  7243  				}
  7244  				if iNdEx >= l {
  7245  					return io.ErrUnexpectedEOF
  7246  				}
  7247  				b := dAtA[iNdEx]
  7248  				iNdEx++
  7249  				m.Id |= int32(b&0x7F) << shift
  7250  				if b < 0x80 {
  7251  					break
  7252  				}
  7253  			}
  7254  		case 2:
  7255  			if wireType != 2 {
  7256  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
  7257  			}
  7258  			var stringLen uint64
  7259  			for shift := uint(0); ; shift += 7 {
  7260  				if shift >= 64 {
  7261  					return ErrIntOverflowUnknonwnproto
  7262  				}
  7263  				if iNdEx >= l {
  7264  					return io.ErrUnexpectedEOF
  7265  				}
  7266  				b := dAtA[iNdEx]
  7267  				iNdEx++
  7268  				stringLen |= uint64(b&0x7F) << shift
  7269  				if b < 0x80 {
  7270  					break
  7271  				}
  7272  			}
  7273  			intStringLen := int(stringLen)
  7274  			if intStringLen < 0 {
  7275  				return ErrInvalidLengthUnknonwnproto
  7276  			}
  7277  			postIndex := iNdEx + intStringLen
  7278  			if postIndex < 0 {
  7279  				return ErrInvalidLengthUnknonwnproto
  7280  			}
  7281  			if postIndex > l {
  7282  				return io.ErrUnexpectedEOF
  7283  			}
  7284  			m.Name = string(dAtA[iNdEx:postIndex])
  7285  			iNdEx = postIndex
  7286  		case 3:
  7287  			if wireType != 2 {
  7288  				return fmt.Errorf("proto: wrong wireType = %d for field Nested", wireType)
  7289  			}
  7290  			var msglen int
  7291  			for shift := uint(0); ; shift += 7 {
  7292  				if shift >= 64 {
  7293  					return ErrIntOverflowUnknonwnproto
  7294  				}
  7295  				if iNdEx >= l {
  7296  					return io.ErrUnexpectedEOF
  7297  				}
  7298  				b := dAtA[iNdEx]
  7299  				iNdEx++
  7300  				msglen |= int(b&0x7F) << shift
  7301  				if b < 0x80 {
  7302  					break
  7303  				}
  7304  			}
  7305  			if msglen < 0 {
  7306  				return ErrInvalidLengthUnknonwnproto
  7307  			}
  7308  			postIndex := iNdEx + msglen
  7309  			if postIndex < 0 {
  7310  				return ErrInvalidLengthUnknonwnproto
  7311  			}
  7312  			if postIndex > l {
  7313  				return io.ErrUnexpectedEOF
  7314  			}
  7315  			if m.Nested == nil {
  7316  				m.Nested = &Nested3A{}
  7317  			}
  7318  			if err := m.Nested.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7319  				return err
  7320  			}
  7321  			iNdEx = postIndex
  7322  		default:
  7323  			iNdEx = preIndex
  7324  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
  7325  			if err != nil {
  7326  				return err
  7327  			}
  7328  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  7329  				return ErrInvalidLengthUnknonwnproto
  7330  			}
  7331  			if (iNdEx + skippy) > l {
  7332  				return io.ErrUnexpectedEOF
  7333  			}
  7334  			iNdEx += skippy
  7335  		}
  7336  	}
  7337  
  7338  	if iNdEx > l {
  7339  		return io.ErrUnexpectedEOF
  7340  	}
  7341  	return nil
  7342  }
  7343  func (m *Nested1A) Unmarshal(dAtA []byte) error {
  7344  	l := len(dAtA)
  7345  	iNdEx := 0
  7346  	for iNdEx < l {
  7347  		preIndex := iNdEx
  7348  		var wire uint64
  7349  		for shift := uint(0); ; shift += 7 {
  7350  			if shift >= 64 {
  7351  				return ErrIntOverflowUnknonwnproto
  7352  			}
  7353  			if iNdEx >= l {
  7354  				return io.ErrUnexpectedEOF
  7355  			}
  7356  			b := dAtA[iNdEx]
  7357  			iNdEx++
  7358  			wire |= uint64(b&0x7F) << shift
  7359  			if b < 0x80 {
  7360  				break
  7361  			}
  7362  		}
  7363  		fieldNum := int32(wire >> 3)
  7364  		wireType := int(wire & 0x7)
  7365  		if wireType == 4 {
  7366  			return fmt.Errorf("proto: Nested1A: wiretype end group for non-group")
  7367  		}
  7368  		if fieldNum <= 0 {
  7369  			return fmt.Errorf("proto: Nested1A: illegal tag %d (wire type %d)", fieldNum, wire)
  7370  		}
  7371  		switch fieldNum {
  7372  		case 1:
  7373  			if wireType != 0 {
  7374  				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
  7375  			}
  7376  			m.Id = 0
  7377  			for shift := uint(0); ; shift += 7 {
  7378  				if shift >= 64 {
  7379  					return ErrIntOverflowUnknonwnproto
  7380  				}
  7381  				if iNdEx >= l {
  7382  					return io.ErrUnexpectedEOF
  7383  				}
  7384  				b := dAtA[iNdEx]
  7385  				iNdEx++
  7386  				m.Id |= int32(b&0x7F) << shift
  7387  				if b < 0x80 {
  7388  					break
  7389  				}
  7390  			}
  7391  		case 2:
  7392  			if wireType != 2 {
  7393  				return fmt.Errorf("proto: wrong wireType = %d for field Nested", wireType)
  7394  			}
  7395  			var msglen int
  7396  			for shift := uint(0); ; shift += 7 {
  7397  				if shift >= 64 {
  7398  					return ErrIntOverflowUnknonwnproto
  7399  				}
  7400  				if iNdEx >= l {
  7401  					return io.ErrUnexpectedEOF
  7402  				}
  7403  				b := dAtA[iNdEx]
  7404  				iNdEx++
  7405  				msglen |= int(b&0x7F) << shift
  7406  				if b < 0x80 {
  7407  					break
  7408  				}
  7409  			}
  7410  			if msglen < 0 {
  7411  				return ErrInvalidLengthUnknonwnproto
  7412  			}
  7413  			postIndex := iNdEx + msglen
  7414  			if postIndex < 0 {
  7415  				return ErrInvalidLengthUnknonwnproto
  7416  			}
  7417  			if postIndex > l {
  7418  				return io.ErrUnexpectedEOF
  7419  			}
  7420  			if m.Nested == nil {
  7421  				m.Nested = &Nested2A{}
  7422  			}
  7423  			if err := m.Nested.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7424  				return err
  7425  			}
  7426  			iNdEx = postIndex
  7427  		default:
  7428  			iNdEx = preIndex
  7429  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
  7430  			if err != nil {
  7431  				return err
  7432  			}
  7433  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  7434  				return ErrInvalidLengthUnknonwnproto
  7435  			}
  7436  			if (iNdEx + skippy) > l {
  7437  				return io.ErrUnexpectedEOF
  7438  			}
  7439  			iNdEx += skippy
  7440  		}
  7441  	}
  7442  
  7443  	if iNdEx > l {
  7444  		return io.ErrUnexpectedEOF
  7445  	}
  7446  	return nil
  7447  }
  7448  func (m *Nested4B) Unmarshal(dAtA []byte) error {
  7449  	l := len(dAtA)
  7450  	iNdEx := 0
  7451  	for iNdEx < l {
  7452  		preIndex := iNdEx
  7453  		var wire uint64
  7454  		for shift := uint(0); ; shift += 7 {
  7455  			if shift >= 64 {
  7456  				return ErrIntOverflowUnknonwnproto
  7457  			}
  7458  			if iNdEx >= l {
  7459  				return io.ErrUnexpectedEOF
  7460  			}
  7461  			b := dAtA[iNdEx]
  7462  			iNdEx++
  7463  			wire |= uint64(b&0x7F) << shift
  7464  			if b < 0x80 {
  7465  				break
  7466  			}
  7467  		}
  7468  		fieldNum := int32(wire >> 3)
  7469  		wireType := int(wire & 0x7)
  7470  		if wireType == 4 {
  7471  			return fmt.Errorf("proto: Nested4B: wiretype end group for non-group")
  7472  		}
  7473  		if fieldNum <= 0 {
  7474  			return fmt.Errorf("proto: Nested4B: illegal tag %d (wire type %d)", fieldNum, wire)
  7475  		}
  7476  		switch fieldNum {
  7477  		case 1:
  7478  			if wireType != 0 {
  7479  				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
  7480  			}
  7481  			m.Id = 0
  7482  			for shift := uint(0); ; shift += 7 {
  7483  				if shift >= 64 {
  7484  					return ErrIntOverflowUnknonwnproto
  7485  				}
  7486  				if iNdEx >= l {
  7487  					return io.ErrUnexpectedEOF
  7488  				}
  7489  				b := dAtA[iNdEx]
  7490  				iNdEx++
  7491  				m.Id |= int32(b&0x7F) << shift
  7492  				if b < 0x80 {
  7493  					break
  7494  				}
  7495  			}
  7496  		case 2:
  7497  			if wireType != 0 {
  7498  				return fmt.Errorf("proto: wrong wireType = %d for field Age", wireType)
  7499  			}
  7500  			m.Age = 0
  7501  			for shift := uint(0); ; shift += 7 {
  7502  				if shift >= 64 {
  7503  					return ErrIntOverflowUnknonwnproto
  7504  				}
  7505  				if iNdEx >= l {
  7506  					return io.ErrUnexpectedEOF
  7507  				}
  7508  				b := dAtA[iNdEx]
  7509  				iNdEx++
  7510  				m.Age |= int32(b&0x7F) << shift
  7511  				if b < 0x80 {
  7512  					break
  7513  				}
  7514  			}
  7515  		case 3:
  7516  			if wireType != 2 {
  7517  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
  7518  			}
  7519  			var stringLen uint64
  7520  			for shift := uint(0); ; shift += 7 {
  7521  				if shift >= 64 {
  7522  					return ErrIntOverflowUnknonwnproto
  7523  				}
  7524  				if iNdEx >= l {
  7525  					return io.ErrUnexpectedEOF
  7526  				}
  7527  				b := dAtA[iNdEx]
  7528  				iNdEx++
  7529  				stringLen |= uint64(b&0x7F) << shift
  7530  				if b < 0x80 {
  7531  					break
  7532  				}
  7533  			}
  7534  			intStringLen := int(stringLen)
  7535  			if intStringLen < 0 {
  7536  				return ErrInvalidLengthUnknonwnproto
  7537  			}
  7538  			postIndex := iNdEx + intStringLen
  7539  			if postIndex < 0 {
  7540  				return ErrInvalidLengthUnknonwnproto
  7541  			}
  7542  			if postIndex > l {
  7543  				return io.ErrUnexpectedEOF
  7544  			}
  7545  			m.Name = string(dAtA[iNdEx:postIndex])
  7546  			iNdEx = postIndex
  7547  		default:
  7548  			iNdEx = preIndex
  7549  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
  7550  			if err != nil {
  7551  				return err
  7552  			}
  7553  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  7554  				return ErrInvalidLengthUnknonwnproto
  7555  			}
  7556  			if (iNdEx + skippy) > l {
  7557  				return io.ErrUnexpectedEOF
  7558  			}
  7559  			iNdEx += skippy
  7560  		}
  7561  	}
  7562  
  7563  	if iNdEx > l {
  7564  		return io.ErrUnexpectedEOF
  7565  	}
  7566  	return nil
  7567  }
  7568  func (m *Nested3B) Unmarshal(dAtA []byte) error {
  7569  	l := len(dAtA)
  7570  	iNdEx := 0
  7571  	for iNdEx < l {
  7572  		preIndex := iNdEx
  7573  		var wire uint64
  7574  		for shift := uint(0); ; shift += 7 {
  7575  			if shift >= 64 {
  7576  				return ErrIntOverflowUnknonwnproto
  7577  			}
  7578  			if iNdEx >= l {
  7579  				return io.ErrUnexpectedEOF
  7580  			}
  7581  			b := dAtA[iNdEx]
  7582  			iNdEx++
  7583  			wire |= uint64(b&0x7F) << shift
  7584  			if b < 0x80 {
  7585  				break
  7586  			}
  7587  		}
  7588  		fieldNum := int32(wire >> 3)
  7589  		wireType := int(wire & 0x7)
  7590  		if wireType == 4 {
  7591  			return fmt.Errorf("proto: Nested3B: wiretype end group for non-group")
  7592  		}
  7593  		if fieldNum <= 0 {
  7594  			return fmt.Errorf("proto: Nested3B: illegal tag %d (wire type %d)", fieldNum, wire)
  7595  		}
  7596  		switch fieldNum {
  7597  		case 1:
  7598  			if wireType != 0 {
  7599  				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
  7600  			}
  7601  			m.Id = 0
  7602  			for shift := uint(0); ; shift += 7 {
  7603  				if shift >= 64 {
  7604  					return ErrIntOverflowUnknonwnproto
  7605  				}
  7606  				if iNdEx >= l {
  7607  					return io.ErrUnexpectedEOF
  7608  				}
  7609  				b := dAtA[iNdEx]
  7610  				iNdEx++
  7611  				m.Id |= int32(b&0x7F) << shift
  7612  				if b < 0x80 {
  7613  					break
  7614  				}
  7615  			}
  7616  		case 2:
  7617  			if wireType != 0 {
  7618  				return fmt.Errorf("proto: wrong wireType = %d for field Age", wireType)
  7619  			}
  7620  			m.Age = 0
  7621  			for shift := uint(0); ; shift += 7 {
  7622  				if shift >= 64 {
  7623  					return ErrIntOverflowUnknonwnproto
  7624  				}
  7625  				if iNdEx >= l {
  7626  					return io.ErrUnexpectedEOF
  7627  				}
  7628  				b := dAtA[iNdEx]
  7629  				iNdEx++
  7630  				m.Age |= int32(b&0x7F) << shift
  7631  				if b < 0x80 {
  7632  					break
  7633  				}
  7634  			}
  7635  		case 3:
  7636  			if wireType != 2 {
  7637  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
  7638  			}
  7639  			var stringLen uint64
  7640  			for shift := uint(0); ; shift += 7 {
  7641  				if shift >= 64 {
  7642  					return ErrIntOverflowUnknonwnproto
  7643  				}
  7644  				if iNdEx >= l {
  7645  					return io.ErrUnexpectedEOF
  7646  				}
  7647  				b := dAtA[iNdEx]
  7648  				iNdEx++
  7649  				stringLen |= uint64(b&0x7F) << shift
  7650  				if b < 0x80 {
  7651  					break
  7652  				}
  7653  			}
  7654  			intStringLen := int(stringLen)
  7655  			if intStringLen < 0 {
  7656  				return ErrInvalidLengthUnknonwnproto
  7657  			}
  7658  			postIndex := iNdEx + intStringLen
  7659  			if postIndex < 0 {
  7660  				return ErrInvalidLengthUnknonwnproto
  7661  			}
  7662  			if postIndex > l {
  7663  				return io.ErrUnexpectedEOF
  7664  			}
  7665  			m.Name = string(dAtA[iNdEx:postIndex])
  7666  			iNdEx = postIndex
  7667  		case 4:
  7668  			if wireType != 2 {
  7669  				return fmt.Errorf("proto: wrong wireType = %d for field B4", wireType)
  7670  			}
  7671  			var msglen int
  7672  			for shift := uint(0); ; shift += 7 {
  7673  				if shift >= 64 {
  7674  					return ErrIntOverflowUnknonwnproto
  7675  				}
  7676  				if iNdEx >= l {
  7677  					return io.ErrUnexpectedEOF
  7678  				}
  7679  				b := dAtA[iNdEx]
  7680  				iNdEx++
  7681  				msglen |= int(b&0x7F) << shift
  7682  				if b < 0x80 {
  7683  					break
  7684  				}
  7685  			}
  7686  			if msglen < 0 {
  7687  				return ErrInvalidLengthUnknonwnproto
  7688  			}
  7689  			postIndex := iNdEx + msglen
  7690  			if postIndex < 0 {
  7691  				return ErrInvalidLengthUnknonwnproto
  7692  			}
  7693  			if postIndex > l {
  7694  				return io.ErrUnexpectedEOF
  7695  			}
  7696  			m.B4 = append(m.B4, &Nested4B{})
  7697  			if err := m.B4[len(m.B4)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7698  				return err
  7699  			}
  7700  			iNdEx = postIndex
  7701  		default:
  7702  			iNdEx = preIndex
  7703  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
  7704  			if err != nil {
  7705  				return err
  7706  			}
  7707  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  7708  				return ErrInvalidLengthUnknonwnproto
  7709  			}
  7710  			if (iNdEx + skippy) > l {
  7711  				return io.ErrUnexpectedEOF
  7712  			}
  7713  			iNdEx += skippy
  7714  		}
  7715  	}
  7716  
  7717  	if iNdEx > l {
  7718  		return io.ErrUnexpectedEOF
  7719  	}
  7720  	return nil
  7721  }
  7722  func (m *Nested2B) Unmarshal(dAtA []byte) error {
  7723  	l := len(dAtA)
  7724  	iNdEx := 0
  7725  	for iNdEx < l {
  7726  		preIndex := iNdEx
  7727  		var wire uint64
  7728  		for shift := uint(0); ; shift += 7 {
  7729  			if shift >= 64 {
  7730  				return ErrIntOverflowUnknonwnproto
  7731  			}
  7732  			if iNdEx >= l {
  7733  				return io.ErrUnexpectedEOF
  7734  			}
  7735  			b := dAtA[iNdEx]
  7736  			iNdEx++
  7737  			wire |= uint64(b&0x7F) << shift
  7738  			if b < 0x80 {
  7739  				break
  7740  			}
  7741  		}
  7742  		fieldNum := int32(wire >> 3)
  7743  		wireType := int(wire & 0x7)
  7744  		if wireType == 4 {
  7745  			return fmt.Errorf("proto: Nested2B: wiretype end group for non-group")
  7746  		}
  7747  		if fieldNum <= 0 {
  7748  			return fmt.Errorf("proto: Nested2B: illegal tag %d (wire type %d)", fieldNum, wire)
  7749  		}
  7750  		switch fieldNum {
  7751  		case 1:
  7752  			if wireType != 0 {
  7753  				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
  7754  			}
  7755  			m.Id = 0
  7756  			for shift := uint(0); ; shift += 7 {
  7757  				if shift >= 64 {
  7758  					return ErrIntOverflowUnknonwnproto
  7759  				}
  7760  				if iNdEx >= l {
  7761  					return io.ErrUnexpectedEOF
  7762  				}
  7763  				b := dAtA[iNdEx]
  7764  				iNdEx++
  7765  				m.Id |= int32(b&0x7F) << shift
  7766  				if b < 0x80 {
  7767  					break
  7768  				}
  7769  			}
  7770  		case 2:
  7771  			if wireType != 1 {
  7772  				return fmt.Errorf("proto: wrong wireType = %d for field Fee", wireType)
  7773  			}
  7774  			var v uint64
  7775  			if (iNdEx + 8) > l {
  7776  				return io.ErrUnexpectedEOF
  7777  			}
  7778  			v = uint64(encoding_binary.LittleEndian.Uint64(dAtA[iNdEx:]))
  7779  			iNdEx += 8
  7780  			m.Fee = float64(math.Float64frombits(v))
  7781  		case 3:
  7782  			if wireType != 2 {
  7783  				return fmt.Errorf("proto: wrong wireType = %d for field Nested", wireType)
  7784  			}
  7785  			var msglen int
  7786  			for shift := uint(0); ; shift += 7 {
  7787  				if shift >= 64 {
  7788  					return ErrIntOverflowUnknonwnproto
  7789  				}
  7790  				if iNdEx >= l {
  7791  					return io.ErrUnexpectedEOF
  7792  				}
  7793  				b := dAtA[iNdEx]
  7794  				iNdEx++
  7795  				msglen |= int(b&0x7F) << shift
  7796  				if b < 0x80 {
  7797  					break
  7798  				}
  7799  			}
  7800  			if msglen < 0 {
  7801  				return ErrInvalidLengthUnknonwnproto
  7802  			}
  7803  			postIndex := iNdEx + msglen
  7804  			if postIndex < 0 {
  7805  				return ErrInvalidLengthUnknonwnproto
  7806  			}
  7807  			if postIndex > l {
  7808  				return io.ErrUnexpectedEOF
  7809  			}
  7810  			if m.Nested == nil {
  7811  				m.Nested = &Nested3B{}
  7812  			}
  7813  			if err := m.Nested.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7814  				return err
  7815  			}
  7816  			iNdEx = postIndex
  7817  		case 4:
  7818  			if wireType != 2 {
  7819  				return fmt.Errorf("proto: wrong wireType = %d for field Route", wireType)
  7820  			}
  7821  			var stringLen uint64
  7822  			for shift := uint(0); ; shift += 7 {
  7823  				if shift >= 64 {
  7824  					return ErrIntOverflowUnknonwnproto
  7825  				}
  7826  				if iNdEx >= l {
  7827  					return io.ErrUnexpectedEOF
  7828  				}
  7829  				b := dAtA[iNdEx]
  7830  				iNdEx++
  7831  				stringLen |= uint64(b&0x7F) << shift
  7832  				if b < 0x80 {
  7833  					break
  7834  				}
  7835  			}
  7836  			intStringLen := int(stringLen)
  7837  			if intStringLen < 0 {
  7838  				return ErrInvalidLengthUnknonwnproto
  7839  			}
  7840  			postIndex := iNdEx + intStringLen
  7841  			if postIndex < 0 {
  7842  				return ErrInvalidLengthUnknonwnproto
  7843  			}
  7844  			if postIndex > l {
  7845  				return io.ErrUnexpectedEOF
  7846  			}
  7847  			m.Route = string(dAtA[iNdEx:postIndex])
  7848  			iNdEx = postIndex
  7849  		default:
  7850  			iNdEx = preIndex
  7851  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
  7852  			if err != nil {
  7853  				return err
  7854  			}
  7855  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  7856  				return ErrInvalidLengthUnknonwnproto
  7857  			}
  7858  			if (iNdEx + skippy) > l {
  7859  				return io.ErrUnexpectedEOF
  7860  			}
  7861  			iNdEx += skippy
  7862  		}
  7863  	}
  7864  
  7865  	if iNdEx > l {
  7866  		return io.ErrUnexpectedEOF
  7867  	}
  7868  	return nil
  7869  }
  7870  func (m *Nested1B) Unmarshal(dAtA []byte) error {
  7871  	l := len(dAtA)
  7872  	iNdEx := 0
  7873  	for iNdEx < l {
  7874  		preIndex := iNdEx
  7875  		var wire uint64
  7876  		for shift := uint(0); ; shift += 7 {
  7877  			if shift >= 64 {
  7878  				return ErrIntOverflowUnknonwnproto
  7879  			}
  7880  			if iNdEx >= l {
  7881  				return io.ErrUnexpectedEOF
  7882  			}
  7883  			b := dAtA[iNdEx]
  7884  			iNdEx++
  7885  			wire |= uint64(b&0x7F) << shift
  7886  			if b < 0x80 {
  7887  				break
  7888  			}
  7889  		}
  7890  		fieldNum := int32(wire >> 3)
  7891  		wireType := int(wire & 0x7)
  7892  		if wireType == 4 {
  7893  			return fmt.Errorf("proto: Nested1B: wiretype end group for non-group")
  7894  		}
  7895  		if fieldNum <= 0 {
  7896  			return fmt.Errorf("proto: Nested1B: illegal tag %d (wire type %d)", fieldNum, wire)
  7897  		}
  7898  		switch fieldNum {
  7899  		case 1:
  7900  			if wireType != 0 {
  7901  				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
  7902  			}
  7903  			m.Id = 0
  7904  			for shift := uint(0); ; shift += 7 {
  7905  				if shift >= 64 {
  7906  					return ErrIntOverflowUnknonwnproto
  7907  				}
  7908  				if iNdEx >= l {
  7909  					return io.ErrUnexpectedEOF
  7910  				}
  7911  				b := dAtA[iNdEx]
  7912  				iNdEx++
  7913  				m.Id |= int32(b&0x7F) << shift
  7914  				if b < 0x80 {
  7915  					break
  7916  				}
  7917  			}
  7918  		case 2:
  7919  			if wireType != 2 {
  7920  				return fmt.Errorf("proto: wrong wireType = %d for field Nested", wireType)
  7921  			}
  7922  			var msglen int
  7923  			for shift := uint(0); ; shift += 7 {
  7924  				if shift >= 64 {
  7925  					return ErrIntOverflowUnknonwnproto
  7926  				}
  7927  				if iNdEx >= l {
  7928  					return io.ErrUnexpectedEOF
  7929  				}
  7930  				b := dAtA[iNdEx]
  7931  				iNdEx++
  7932  				msglen |= int(b&0x7F) << shift
  7933  				if b < 0x80 {
  7934  					break
  7935  				}
  7936  			}
  7937  			if msglen < 0 {
  7938  				return ErrInvalidLengthUnknonwnproto
  7939  			}
  7940  			postIndex := iNdEx + msglen
  7941  			if postIndex < 0 {
  7942  				return ErrInvalidLengthUnknonwnproto
  7943  			}
  7944  			if postIndex > l {
  7945  				return io.ErrUnexpectedEOF
  7946  			}
  7947  			if m.Nested == nil {
  7948  				m.Nested = &Nested2B{}
  7949  			}
  7950  			if err := m.Nested.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7951  				return err
  7952  			}
  7953  			iNdEx = postIndex
  7954  		case 3:
  7955  			if wireType != 0 {
  7956  				return fmt.Errorf("proto: wrong wireType = %d for field Age", wireType)
  7957  			}
  7958  			m.Age = 0
  7959  			for shift := uint(0); ; shift += 7 {
  7960  				if shift >= 64 {
  7961  					return ErrIntOverflowUnknonwnproto
  7962  				}
  7963  				if iNdEx >= l {
  7964  					return io.ErrUnexpectedEOF
  7965  				}
  7966  				b := dAtA[iNdEx]
  7967  				iNdEx++
  7968  				m.Age |= int32(b&0x7F) << shift
  7969  				if b < 0x80 {
  7970  					break
  7971  				}
  7972  			}
  7973  		default:
  7974  			iNdEx = preIndex
  7975  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
  7976  			if err != nil {
  7977  				return err
  7978  			}
  7979  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  7980  				return ErrInvalidLengthUnknonwnproto
  7981  			}
  7982  			if (iNdEx + skippy) > l {
  7983  				return io.ErrUnexpectedEOF
  7984  			}
  7985  			iNdEx += skippy
  7986  		}
  7987  	}
  7988  
  7989  	if iNdEx > l {
  7990  		return io.ErrUnexpectedEOF
  7991  	}
  7992  	return nil
  7993  }
  7994  func (m *Customer3) Unmarshal(dAtA []byte) error {
  7995  	l := len(dAtA)
  7996  	iNdEx := 0
  7997  	for iNdEx < l {
  7998  		preIndex := iNdEx
  7999  		var wire uint64
  8000  		for shift := uint(0); ; shift += 7 {
  8001  			if shift >= 64 {
  8002  				return ErrIntOverflowUnknonwnproto
  8003  			}
  8004  			if iNdEx >= l {
  8005  				return io.ErrUnexpectedEOF
  8006  			}
  8007  			b := dAtA[iNdEx]
  8008  			iNdEx++
  8009  			wire |= uint64(b&0x7F) << shift
  8010  			if b < 0x80 {
  8011  				break
  8012  			}
  8013  		}
  8014  		fieldNum := int32(wire >> 3)
  8015  		wireType := int(wire & 0x7)
  8016  		if wireType == 4 {
  8017  			return fmt.Errorf("proto: Customer3: wiretype end group for non-group")
  8018  		}
  8019  		if fieldNum <= 0 {
  8020  			return fmt.Errorf("proto: Customer3: illegal tag %d (wire type %d)", fieldNum, wire)
  8021  		}
  8022  		switch fieldNum {
  8023  		case 1:
  8024  			if wireType != 0 {
  8025  				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
  8026  			}
  8027  			m.Id = 0
  8028  			for shift := uint(0); ; shift += 7 {
  8029  				if shift >= 64 {
  8030  					return ErrIntOverflowUnknonwnproto
  8031  				}
  8032  				if iNdEx >= l {
  8033  					return io.ErrUnexpectedEOF
  8034  				}
  8035  				b := dAtA[iNdEx]
  8036  				iNdEx++
  8037  				m.Id |= int32(b&0x7F) << shift
  8038  				if b < 0x80 {
  8039  					break
  8040  				}
  8041  			}
  8042  		case 2:
  8043  			if wireType != 2 {
  8044  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
  8045  			}
  8046  			var stringLen uint64
  8047  			for shift := uint(0); ; shift += 7 {
  8048  				if shift >= 64 {
  8049  					return ErrIntOverflowUnknonwnproto
  8050  				}
  8051  				if iNdEx >= l {
  8052  					return io.ErrUnexpectedEOF
  8053  				}
  8054  				b := dAtA[iNdEx]
  8055  				iNdEx++
  8056  				stringLen |= uint64(b&0x7F) << shift
  8057  				if b < 0x80 {
  8058  					break
  8059  				}
  8060  			}
  8061  			intStringLen := int(stringLen)
  8062  			if intStringLen < 0 {
  8063  				return ErrInvalidLengthUnknonwnproto
  8064  			}
  8065  			postIndex := iNdEx + intStringLen
  8066  			if postIndex < 0 {
  8067  				return ErrInvalidLengthUnknonwnproto
  8068  			}
  8069  			if postIndex > l {
  8070  				return io.ErrUnexpectedEOF
  8071  			}
  8072  			m.Name = string(dAtA[iNdEx:postIndex])
  8073  			iNdEx = postIndex
  8074  		case 3:
  8075  			if wireType != 5 {
  8076  				return fmt.Errorf("proto: wrong wireType = %d for field Sf", wireType)
  8077  			}
  8078  			var v uint32
  8079  			if (iNdEx + 4) > l {
  8080  				return io.ErrUnexpectedEOF
  8081  			}
  8082  			v = uint32(encoding_binary.LittleEndian.Uint32(dAtA[iNdEx:]))
  8083  			iNdEx += 4
  8084  			m.Sf = float32(math.Float32frombits(v))
  8085  		case 4:
  8086  			if wireType != 5 {
  8087  				return fmt.Errorf("proto: wrong wireType = %d for field Surcharge", wireType)
  8088  			}
  8089  			var v uint32
  8090  			if (iNdEx + 4) > l {
  8091  				return io.ErrUnexpectedEOF
  8092  			}
  8093  			v = uint32(encoding_binary.LittleEndian.Uint32(dAtA[iNdEx:]))
  8094  			iNdEx += 4
  8095  			m.Surcharge = float32(math.Float32frombits(v))
  8096  		case 5:
  8097  			if wireType != 2 {
  8098  				return fmt.Errorf("proto: wrong wireType = %d for field Destination", wireType)
  8099  			}
  8100  			var stringLen uint64
  8101  			for shift := uint(0); ; shift += 7 {
  8102  				if shift >= 64 {
  8103  					return ErrIntOverflowUnknonwnproto
  8104  				}
  8105  				if iNdEx >= l {
  8106  					return io.ErrUnexpectedEOF
  8107  				}
  8108  				b := dAtA[iNdEx]
  8109  				iNdEx++
  8110  				stringLen |= uint64(b&0x7F) << shift
  8111  				if b < 0x80 {
  8112  					break
  8113  				}
  8114  			}
  8115  			intStringLen := int(stringLen)
  8116  			if intStringLen < 0 {
  8117  				return ErrInvalidLengthUnknonwnproto
  8118  			}
  8119  			postIndex := iNdEx + intStringLen
  8120  			if postIndex < 0 {
  8121  				return ErrInvalidLengthUnknonwnproto
  8122  			}
  8123  			if postIndex > l {
  8124  				return io.ErrUnexpectedEOF
  8125  			}
  8126  			m.Destination = string(dAtA[iNdEx:postIndex])
  8127  			iNdEx = postIndex
  8128  		case 7:
  8129  			if wireType != 2 {
  8130  				return fmt.Errorf("proto: wrong wireType = %d for field CreditCardNo", wireType)
  8131  			}
  8132  			var stringLen uint64
  8133  			for shift := uint(0); ; shift += 7 {
  8134  				if shift >= 64 {
  8135  					return ErrIntOverflowUnknonwnproto
  8136  				}
  8137  				if iNdEx >= l {
  8138  					return io.ErrUnexpectedEOF
  8139  				}
  8140  				b := dAtA[iNdEx]
  8141  				iNdEx++
  8142  				stringLen |= uint64(b&0x7F) << shift
  8143  				if b < 0x80 {
  8144  					break
  8145  				}
  8146  			}
  8147  			intStringLen := int(stringLen)
  8148  			if intStringLen < 0 {
  8149  				return ErrInvalidLengthUnknonwnproto
  8150  			}
  8151  			postIndex := iNdEx + intStringLen
  8152  			if postIndex < 0 {
  8153  				return ErrInvalidLengthUnknonwnproto
  8154  			}
  8155  			if postIndex > l {
  8156  				return io.ErrUnexpectedEOF
  8157  			}
  8158  			m.Payment = &Customer3_CreditCardNo{string(dAtA[iNdEx:postIndex])}
  8159  			iNdEx = postIndex
  8160  		case 8:
  8161  			if wireType != 2 {
  8162  				return fmt.Errorf("proto: wrong wireType = %d for field ChequeNo", wireType)
  8163  			}
  8164  			var stringLen uint64
  8165  			for shift := uint(0); ; shift += 7 {
  8166  				if shift >= 64 {
  8167  					return ErrIntOverflowUnknonwnproto
  8168  				}
  8169  				if iNdEx >= l {
  8170  					return io.ErrUnexpectedEOF
  8171  				}
  8172  				b := dAtA[iNdEx]
  8173  				iNdEx++
  8174  				stringLen |= uint64(b&0x7F) << shift
  8175  				if b < 0x80 {
  8176  					break
  8177  				}
  8178  			}
  8179  			intStringLen := int(stringLen)
  8180  			if intStringLen < 0 {
  8181  				return ErrInvalidLengthUnknonwnproto
  8182  			}
  8183  			postIndex := iNdEx + intStringLen
  8184  			if postIndex < 0 {
  8185  				return ErrInvalidLengthUnknonwnproto
  8186  			}
  8187  			if postIndex > l {
  8188  				return io.ErrUnexpectedEOF
  8189  			}
  8190  			m.Payment = &Customer3_ChequeNo{string(dAtA[iNdEx:postIndex])}
  8191  			iNdEx = postIndex
  8192  		case 9:
  8193  			if wireType != 2 {
  8194  				return fmt.Errorf("proto: wrong wireType = %d for field Original", wireType)
  8195  			}
  8196  			var msglen int
  8197  			for shift := uint(0); ; shift += 7 {
  8198  				if shift >= 64 {
  8199  					return ErrIntOverflowUnknonwnproto
  8200  				}
  8201  				if iNdEx >= l {
  8202  					return io.ErrUnexpectedEOF
  8203  				}
  8204  				b := dAtA[iNdEx]
  8205  				iNdEx++
  8206  				msglen |= int(b&0x7F) << shift
  8207  				if b < 0x80 {
  8208  					break
  8209  				}
  8210  			}
  8211  			if msglen < 0 {
  8212  				return ErrInvalidLengthUnknonwnproto
  8213  			}
  8214  			postIndex := iNdEx + msglen
  8215  			if postIndex < 0 {
  8216  				return ErrInvalidLengthUnknonwnproto
  8217  			}
  8218  			if postIndex > l {
  8219  				return io.ErrUnexpectedEOF
  8220  			}
  8221  			if m.Original == nil {
  8222  				m.Original = &Customer1{}
  8223  			}
  8224  			if err := m.Original.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8225  				return err
  8226  			}
  8227  			iNdEx = postIndex
  8228  		default:
  8229  			iNdEx = preIndex
  8230  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
  8231  			if err != nil {
  8232  				return err
  8233  			}
  8234  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  8235  				return ErrInvalidLengthUnknonwnproto
  8236  			}
  8237  			if (iNdEx + skippy) > l {
  8238  				return io.ErrUnexpectedEOF
  8239  			}
  8240  			iNdEx += skippy
  8241  		}
  8242  	}
  8243  
  8244  	if iNdEx > l {
  8245  		return io.ErrUnexpectedEOF
  8246  	}
  8247  	return nil
  8248  }
  8249  func (m *TestVersion1) Unmarshal(dAtA []byte) error {
  8250  	l := len(dAtA)
  8251  	iNdEx := 0
  8252  	for iNdEx < l {
  8253  		preIndex := iNdEx
  8254  		var wire uint64
  8255  		for shift := uint(0); ; shift += 7 {
  8256  			if shift >= 64 {
  8257  				return ErrIntOverflowUnknonwnproto
  8258  			}
  8259  			if iNdEx >= l {
  8260  				return io.ErrUnexpectedEOF
  8261  			}
  8262  			b := dAtA[iNdEx]
  8263  			iNdEx++
  8264  			wire |= uint64(b&0x7F) << shift
  8265  			if b < 0x80 {
  8266  				break
  8267  			}
  8268  		}
  8269  		fieldNum := int32(wire >> 3)
  8270  		wireType := int(wire & 0x7)
  8271  		if wireType == 4 {
  8272  			return fmt.Errorf("proto: TestVersion1: wiretype end group for non-group")
  8273  		}
  8274  		if fieldNum <= 0 {
  8275  			return fmt.Errorf("proto: TestVersion1: illegal tag %d (wire type %d)", fieldNum, wire)
  8276  		}
  8277  		switch fieldNum {
  8278  		case 1:
  8279  			if wireType != 0 {
  8280  				return fmt.Errorf("proto: wrong wireType = %d for field X", wireType)
  8281  			}
  8282  			m.X = 0
  8283  			for shift := uint(0); ; shift += 7 {
  8284  				if shift >= 64 {
  8285  					return ErrIntOverflowUnknonwnproto
  8286  				}
  8287  				if iNdEx >= l {
  8288  					return io.ErrUnexpectedEOF
  8289  				}
  8290  				b := dAtA[iNdEx]
  8291  				iNdEx++
  8292  				m.X |= int64(b&0x7F) << shift
  8293  				if b < 0x80 {
  8294  					break
  8295  				}
  8296  			}
  8297  		case 2:
  8298  			if wireType != 2 {
  8299  				return fmt.Errorf("proto: wrong wireType = %d for field A", wireType)
  8300  			}
  8301  			var msglen int
  8302  			for shift := uint(0); ; shift += 7 {
  8303  				if shift >= 64 {
  8304  					return ErrIntOverflowUnknonwnproto
  8305  				}
  8306  				if iNdEx >= l {
  8307  					return io.ErrUnexpectedEOF
  8308  				}
  8309  				b := dAtA[iNdEx]
  8310  				iNdEx++
  8311  				msglen |= int(b&0x7F) << shift
  8312  				if b < 0x80 {
  8313  					break
  8314  				}
  8315  			}
  8316  			if msglen < 0 {
  8317  				return ErrInvalidLengthUnknonwnproto
  8318  			}
  8319  			postIndex := iNdEx + msglen
  8320  			if postIndex < 0 {
  8321  				return ErrInvalidLengthUnknonwnproto
  8322  			}
  8323  			if postIndex > l {
  8324  				return io.ErrUnexpectedEOF
  8325  			}
  8326  			if m.A == nil {
  8327  				m.A = &TestVersion1{}
  8328  			}
  8329  			if err := m.A.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8330  				return err
  8331  			}
  8332  			iNdEx = postIndex
  8333  		case 3:
  8334  			if wireType != 2 {
  8335  				return fmt.Errorf("proto: wrong wireType = %d for field B", wireType)
  8336  			}
  8337  			var msglen int
  8338  			for shift := uint(0); ; shift += 7 {
  8339  				if shift >= 64 {
  8340  					return ErrIntOverflowUnknonwnproto
  8341  				}
  8342  				if iNdEx >= l {
  8343  					return io.ErrUnexpectedEOF
  8344  				}
  8345  				b := dAtA[iNdEx]
  8346  				iNdEx++
  8347  				msglen |= int(b&0x7F) << shift
  8348  				if b < 0x80 {
  8349  					break
  8350  				}
  8351  			}
  8352  			if msglen < 0 {
  8353  				return ErrInvalidLengthUnknonwnproto
  8354  			}
  8355  			postIndex := iNdEx + msglen
  8356  			if postIndex < 0 {
  8357  				return ErrInvalidLengthUnknonwnproto
  8358  			}
  8359  			if postIndex > l {
  8360  				return io.ErrUnexpectedEOF
  8361  			}
  8362  			if m.B == nil {
  8363  				m.B = &TestVersion1{}
  8364  			}
  8365  			if err := m.B.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8366  				return err
  8367  			}
  8368  			iNdEx = postIndex
  8369  		case 4:
  8370  			if wireType != 2 {
  8371  				return fmt.Errorf("proto: wrong wireType = %d for field C", wireType)
  8372  			}
  8373  			var msglen int
  8374  			for shift := uint(0); ; shift += 7 {
  8375  				if shift >= 64 {
  8376  					return ErrIntOverflowUnknonwnproto
  8377  				}
  8378  				if iNdEx >= l {
  8379  					return io.ErrUnexpectedEOF
  8380  				}
  8381  				b := dAtA[iNdEx]
  8382  				iNdEx++
  8383  				msglen |= int(b&0x7F) << shift
  8384  				if b < 0x80 {
  8385  					break
  8386  				}
  8387  			}
  8388  			if msglen < 0 {
  8389  				return ErrInvalidLengthUnknonwnproto
  8390  			}
  8391  			postIndex := iNdEx + msglen
  8392  			if postIndex < 0 {
  8393  				return ErrInvalidLengthUnknonwnproto
  8394  			}
  8395  			if postIndex > l {
  8396  				return io.ErrUnexpectedEOF
  8397  			}
  8398  			m.C = append(m.C, &TestVersion1{})
  8399  			if err := m.C[len(m.C)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8400  				return err
  8401  			}
  8402  			iNdEx = postIndex
  8403  		case 5:
  8404  			if wireType != 2 {
  8405  				return fmt.Errorf("proto: wrong wireType = %d for field D", wireType)
  8406  			}
  8407  			var msglen int
  8408  			for shift := uint(0); ; shift += 7 {
  8409  				if shift >= 64 {
  8410  					return ErrIntOverflowUnknonwnproto
  8411  				}
  8412  				if iNdEx >= l {
  8413  					return io.ErrUnexpectedEOF
  8414  				}
  8415  				b := dAtA[iNdEx]
  8416  				iNdEx++
  8417  				msglen |= int(b&0x7F) << shift
  8418  				if b < 0x80 {
  8419  					break
  8420  				}
  8421  			}
  8422  			if msglen < 0 {
  8423  				return ErrInvalidLengthUnknonwnproto
  8424  			}
  8425  			postIndex := iNdEx + msglen
  8426  			if postIndex < 0 {
  8427  				return ErrInvalidLengthUnknonwnproto
  8428  			}
  8429  			if postIndex > l {
  8430  				return io.ErrUnexpectedEOF
  8431  			}
  8432  			m.D = append(m.D, TestVersion1{})
  8433  			if err := m.D[len(m.D)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8434  				return err
  8435  			}
  8436  			iNdEx = postIndex
  8437  		case 6:
  8438  			if wireType != 0 {
  8439  				return fmt.Errorf("proto: wrong wireType = %d for field E", wireType)
  8440  			}
  8441  			var v int32
  8442  			for shift := uint(0); ; shift += 7 {
  8443  				if shift >= 64 {
  8444  					return ErrIntOverflowUnknonwnproto
  8445  				}
  8446  				if iNdEx >= l {
  8447  					return io.ErrUnexpectedEOF
  8448  				}
  8449  				b := dAtA[iNdEx]
  8450  				iNdEx++
  8451  				v |= int32(b&0x7F) << shift
  8452  				if b < 0x80 {
  8453  					break
  8454  				}
  8455  			}
  8456  			m.Sum = &TestVersion1_E{v}
  8457  		case 7:
  8458  			if wireType != 2 {
  8459  				return fmt.Errorf("proto: wrong wireType = %d for field F", wireType)
  8460  			}
  8461  			var msglen int
  8462  			for shift := uint(0); ; shift += 7 {
  8463  				if shift >= 64 {
  8464  					return ErrIntOverflowUnknonwnproto
  8465  				}
  8466  				if iNdEx >= l {
  8467  					return io.ErrUnexpectedEOF
  8468  				}
  8469  				b := dAtA[iNdEx]
  8470  				iNdEx++
  8471  				msglen |= int(b&0x7F) << shift
  8472  				if b < 0x80 {
  8473  					break
  8474  				}
  8475  			}
  8476  			if msglen < 0 {
  8477  				return ErrInvalidLengthUnknonwnproto
  8478  			}
  8479  			postIndex := iNdEx + msglen
  8480  			if postIndex < 0 {
  8481  				return ErrInvalidLengthUnknonwnproto
  8482  			}
  8483  			if postIndex > l {
  8484  				return io.ErrUnexpectedEOF
  8485  			}
  8486  			v := &TestVersion1{}
  8487  			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8488  				return err
  8489  			}
  8490  			m.Sum = &TestVersion1_F{v}
  8491  			iNdEx = postIndex
  8492  		case 8:
  8493  			if wireType != 2 {
  8494  				return fmt.Errorf("proto: wrong wireType = %d for field G", wireType)
  8495  			}
  8496  			var msglen int
  8497  			for shift := uint(0); ; shift += 7 {
  8498  				if shift >= 64 {
  8499  					return ErrIntOverflowUnknonwnproto
  8500  				}
  8501  				if iNdEx >= l {
  8502  					return io.ErrUnexpectedEOF
  8503  				}
  8504  				b := dAtA[iNdEx]
  8505  				iNdEx++
  8506  				msglen |= int(b&0x7F) << shift
  8507  				if b < 0x80 {
  8508  					break
  8509  				}
  8510  			}
  8511  			if msglen < 0 {
  8512  				return ErrInvalidLengthUnknonwnproto
  8513  			}
  8514  			postIndex := iNdEx + msglen
  8515  			if postIndex < 0 {
  8516  				return ErrInvalidLengthUnknonwnproto
  8517  			}
  8518  			if postIndex > l {
  8519  				return io.ErrUnexpectedEOF
  8520  			}
  8521  			if m.G == nil {
  8522  				m.G = &types.Any{}
  8523  			}
  8524  			if err := m.G.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8525  				return err
  8526  			}
  8527  			iNdEx = postIndex
  8528  		case 9:
  8529  			if wireType != 2 {
  8530  				return fmt.Errorf("proto: wrong wireType = %d for field H", wireType)
  8531  			}
  8532  			var msglen int
  8533  			for shift := uint(0); ; shift += 7 {
  8534  				if shift >= 64 {
  8535  					return ErrIntOverflowUnknonwnproto
  8536  				}
  8537  				if iNdEx >= l {
  8538  					return io.ErrUnexpectedEOF
  8539  				}
  8540  				b := dAtA[iNdEx]
  8541  				iNdEx++
  8542  				msglen |= int(b&0x7F) << shift
  8543  				if b < 0x80 {
  8544  					break
  8545  				}
  8546  			}
  8547  			if msglen < 0 {
  8548  				return ErrInvalidLengthUnknonwnproto
  8549  			}
  8550  			postIndex := iNdEx + msglen
  8551  			if postIndex < 0 {
  8552  				return ErrInvalidLengthUnknonwnproto
  8553  			}
  8554  			if postIndex > l {
  8555  				return io.ErrUnexpectedEOF
  8556  			}
  8557  			m.H = append(m.H, &TestVersion1{})
  8558  			if err := m.H[len(m.H)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8559  				return err
  8560  			}
  8561  			iNdEx = postIndex
  8562  		case 12:
  8563  			if wireType != 2 {
  8564  				return fmt.Errorf("proto: wrong wireType = %d for field Customer1", wireType)
  8565  			}
  8566  			var msglen int
  8567  			for shift := uint(0); ; shift += 7 {
  8568  				if shift >= 64 {
  8569  					return ErrIntOverflowUnknonwnproto
  8570  				}
  8571  				if iNdEx >= l {
  8572  					return io.ErrUnexpectedEOF
  8573  				}
  8574  				b := dAtA[iNdEx]
  8575  				iNdEx++
  8576  				msglen |= int(b&0x7F) << shift
  8577  				if b < 0x80 {
  8578  					break
  8579  				}
  8580  			}
  8581  			if msglen < 0 {
  8582  				return ErrInvalidLengthUnknonwnproto
  8583  			}
  8584  			postIndex := iNdEx + msglen
  8585  			if postIndex < 0 {
  8586  				return ErrInvalidLengthUnknonwnproto
  8587  			}
  8588  			if postIndex > l {
  8589  				return io.ErrUnexpectedEOF
  8590  			}
  8591  			if m.Customer1 == nil {
  8592  				m.Customer1 = &Customer1{}
  8593  			}
  8594  			if err := m.Customer1.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8595  				return err
  8596  			}
  8597  			iNdEx = postIndex
  8598  		default:
  8599  			iNdEx = preIndex
  8600  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
  8601  			if err != nil {
  8602  				return err
  8603  			}
  8604  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  8605  				return ErrInvalidLengthUnknonwnproto
  8606  			}
  8607  			if (iNdEx + skippy) > l {
  8608  				return io.ErrUnexpectedEOF
  8609  			}
  8610  			iNdEx += skippy
  8611  		}
  8612  	}
  8613  
  8614  	if iNdEx > l {
  8615  		return io.ErrUnexpectedEOF
  8616  	}
  8617  	return nil
  8618  }
  8619  func (m *TestVersion2) Unmarshal(dAtA []byte) error {
  8620  	l := len(dAtA)
  8621  	iNdEx := 0
  8622  	for iNdEx < l {
  8623  		preIndex := iNdEx
  8624  		var wire uint64
  8625  		for shift := uint(0); ; shift += 7 {
  8626  			if shift >= 64 {
  8627  				return ErrIntOverflowUnknonwnproto
  8628  			}
  8629  			if iNdEx >= l {
  8630  				return io.ErrUnexpectedEOF
  8631  			}
  8632  			b := dAtA[iNdEx]
  8633  			iNdEx++
  8634  			wire |= uint64(b&0x7F) << shift
  8635  			if b < 0x80 {
  8636  				break
  8637  			}
  8638  		}
  8639  		fieldNum := int32(wire >> 3)
  8640  		wireType := int(wire & 0x7)
  8641  		if wireType == 4 {
  8642  			return fmt.Errorf("proto: TestVersion2: wiretype end group for non-group")
  8643  		}
  8644  		if fieldNum <= 0 {
  8645  			return fmt.Errorf("proto: TestVersion2: illegal tag %d (wire type %d)", fieldNum, wire)
  8646  		}
  8647  		switch fieldNum {
  8648  		case 1:
  8649  			if wireType != 0 {
  8650  				return fmt.Errorf("proto: wrong wireType = %d for field X", wireType)
  8651  			}
  8652  			m.X = 0
  8653  			for shift := uint(0); ; shift += 7 {
  8654  				if shift >= 64 {
  8655  					return ErrIntOverflowUnknonwnproto
  8656  				}
  8657  				if iNdEx >= l {
  8658  					return io.ErrUnexpectedEOF
  8659  				}
  8660  				b := dAtA[iNdEx]
  8661  				iNdEx++
  8662  				m.X |= int64(b&0x7F) << shift
  8663  				if b < 0x80 {
  8664  					break
  8665  				}
  8666  			}
  8667  		case 2:
  8668  			if wireType != 2 {
  8669  				return fmt.Errorf("proto: wrong wireType = %d for field A", wireType)
  8670  			}
  8671  			var msglen int
  8672  			for shift := uint(0); ; shift += 7 {
  8673  				if shift >= 64 {
  8674  					return ErrIntOverflowUnknonwnproto
  8675  				}
  8676  				if iNdEx >= l {
  8677  					return io.ErrUnexpectedEOF
  8678  				}
  8679  				b := dAtA[iNdEx]
  8680  				iNdEx++
  8681  				msglen |= int(b&0x7F) << shift
  8682  				if b < 0x80 {
  8683  					break
  8684  				}
  8685  			}
  8686  			if msglen < 0 {
  8687  				return ErrInvalidLengthUnknonwnproto
  8688  			}
  8689  			postIndex := iNdEx + msglen
  8690  			if postIndex < 0 {
  8691  				return ErrInvalidLengthUnknonwnproto
  8692  			}
  8693  			if postIndex > l {
  8694  				return io.ErrUnexpectedEOF
  8695  			}
  8696  			if m.A == nil {
  8697  				m.A = &TestVersion2{}
  8698  			}
  8699  			if err := m.A.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8700  				return err
  8701  			}
  8702  			iNdEx = postIndex
  8703  		case 3:
  8704  			if wireType != 2 {
  8705  				return fmt.Errorf("proto: wrong wireType = %d for field B", wireType)
  8706  			}
  8707  			var msglen int
  8708  			for shift := uint(0); ; shift += 7 {
  8709  				if shift >= 64 {
  8710  					return ErrIntOverflowUnknonwnproto
  8711  				}
  8712  				if iNdEx >= l {
  8713  					return io.ErrUnexpectedEOF
  8714  				}
  8715  				b := dAtA[iNdEx]
  8716  				iNdEx++
  8717  				msglen |= int(b&0x7F) << shift
  8718  				if b < 0x80 {
  8719  					break
  8720  				}
  8721  			}
  8722  			if msglen < 0 {
  8723  				return ErrInvalidLengthUnknonwnproto
  8724  			}
  8725  			postIndex := iNdEx + msglen
  8726  			if postIndex < 0 {
  8727  				return ErrInvalidLengthUnknonwnproto
  8728  			}
  8729  			if postIndex > l {
  8730  				return io.ErrUnexpectedEOF
  8731  			}
  8732  			if m.B == nil {
  8733  				m.B = &TestVersion2{}
  8734  			}
  8735  			if err := m.B.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8736  				return err
  8737  			}
  8738  			iNdEx = postIndex
  8739  		case 4:
  8740  			if wireType != 2 {
  8741  				return fmt.Errorf("proto: wrong wireType = %d for field C", wireType)
  8742  			}
  8743  			var msglen int
  8744  			for shift := uint(0); ; shift += 7 {
  8745  				if shift >= 64 {
  8746  					return ErrIntOverflowUnknonwnproto
  8747  				}
  8748  				if iNdEx >= l {
  8749  					return io.ErrUnexpectedEOF
  8750  				}
  8751  				b := dAtA[iNdEx]
  8752  				iNdEx++
  8753  				msglen |= int(b&0x7F) << shift
  8754  				if b < 0x80 {
  8755  					break
  8756  				}
  8757  			}
  8758  			if msglen < 0 {
  8759  				return ErrInvalidLengthUnknonwnproto
  8760  			}
  8761  			postIndex := iNdEx + msglen
  8762  			if postIndex < 0 {
  8763  				return ErrInvalidLengthUnknonwnproto
  8764  			}
  8765  			if postIndex > l {
  8766  				return io.ErrUnexpectedEOF
  8767  			}
  8768  			m.C = append(m.C, &TestVersion2{})
  8769  			if err := m.C[len(m.C)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8770  				return err
  8771  			}
  8772  			iNdEx = postIndex
  8773  		case 5:
  8774  			if wireType != 2 {
  8775  				return fmt.Errorf("proto: wrong wireType = %d for field D", wireType)
  8776  			}
  8777  			var msglen int
  8778  			for shift := uint(0); ; shift += 7 {
  8779  				if shift >= 64 {
  8780  					return ErrIntOverflowUnknonwnproto
  8781  				}
  8782  				if iNdEx >= l {
  8783  					return io.ErrUnexpectedEOF
  8784  				}
  8785  				b := dAtA[iNdEx]
  8786  				iNdEx++
  8787  				msglen |= int(b&0x7F) << shift
  8788  				if b < 0x80 {
  8789  					break
  8790  				}
  8791  			}
  8792  			if msglen < 0 {
  8793  				return ErrInvalidLengthUnknonwnproto
  8794  			}
  8795  			postIndex := iNdEx + msglen
  8796  			if postIndex < 0 {
  8797  				return ErrInvalidLengthUnknonwnproto
  8798  			}
  8799  			if postIndex > l {
  8800  				return io.ErrUnexpectedEOF
  8801  			}
  8802  			m.D = append(m.D, &TestVersion2{})
  8803  			if err := m.D[len(m.D)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8804  				return err
  8805  			}
  8806  			iNdEx = postIndex
  8807  		case 6:
  8808  			if wireType != 0 {
  8809  				return fmt.Errorf("proto: wrong wireType = %d for field E", wireType)
  8810  			}
  8811  			var v int32
  8812  			for shift := uint(0); ; shift += 7 {
  8813  				if shift >= 64 {
  8814  					return ErrIntOverflowUnknonwnproto
  8815  				}
  8816  				if iNdEx >= l {
  8817  					return io.ErrUnexpectedEOF
  8818  				}
  8819  				b := dAtA[iNdEx]
  8820  				iNdEx++
  8821  				v |= int32(b&0x7F) << shift
  8822  				if b < 0x80 {
  8823  					break
  8824  				}
  8825  			}
  8826  			m.Sum = &TestVersion2_E{v}
  8827  		case 7:
  8828  			if wireType != 2 {
  8829  				return fmt.Errorf("proto: wrong wireType = %d for field F", wireType)
  8830  			}
  8831  			var msglen int
  8832  			for shift := uint(0); ; shift += 7 {
  8833  				if shift >= 64 {
  8834  					return ErrIntOverflowUnknonwnproto
  8835  				}
  8836  				if iNdEx >= l {
  8837  					return io.ErrUnexpectedEOF
  8838  				}
  8839  				b := dAtA[iNdEx]
  8840  				iNdEx++
  8841  				msglen |= int(b&0x7F) << shift
  8842  				if b < 0x80 {
  8843  					break
  8844  				}
  8845  			}
  8846  			if msglen < 0 {
  8847  				return ErrInvalidLengthUnknonwnproto
  8848  			}
  8849  			postIndex := iNdEx + msglen
  8850  			if postIndex < 0 {
  8851  				return ErrInvalidLengthUnknonwnproto
  8852  			}
  8853  			if postIndex > l {
  8854  				return io.ErrUnexpectedEOF
  8855  			}
  8856  			v := &TestVersion2{}
  8857  			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8858  				return err
  8859  			}
  8860  			m.Sum = &TestVersion2_F{v}
  8861  			iNdEx = postIndex
  8862  		case 8:
  8863  			if wireType != 2 {
  8864  				return fmt.Errorf("proto: wrong wireType = %d for field G", wireType)
  8865  			}
  8866  			var msglen int
  8867  			for shift := uint(0); ; shift += 7 {
  8868  				if shift >= 64 {
  8869  					return ErrIntOverflowUnknonwnproto
  8870  				}
  8871  				if iNdEx >= l {
  8872  					return io.ErrUnexpectedEOF
  8873  				}
  8874  				b := dAtA[iNdEx]
  8875  				iNdEx++
  8876  				msglen |= int(b&0x7F) << shift
  8877  				if b < 0x80 {
  8878  					break
  8879  				}
  8880  			}
  8881  			if msglen < 0 {
  8882  				return ErrInvalidLengthUnknonwnproto
  8883  			}
  8884  			postIndex := iNdEx + msglen
  8885  			if postIndex < 0 {
  8886  				return ErrInvalidLengthUnknonwnproto
  8887  			}
  8888  			if postIndex > l {
  8889  				return io.ErrUnexpectedEOF
  8890  			}
  8891  			if m.G == nil {
  8892  				m.G = &types.Any{}
  8893  			}
  8894  			if err := m.G.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8895  				return err
  8896  			}
  8897  			iNdEx = postIndex
  8898  		case 9:
  8899  			if wireType != 2 {
  8900  				return fmt.Errorf("proto: wrong wireType = %d for field H", wireType)
  8901  			}
  8902  			var msglen int
  8903  			for shift := uint(0); ; shift += 7 {
  8904  				if shift >= 64 {
  8905  					return ErrIntOverflowUnknonwnproto
  8906  				}
  8907  				if iNdEx >= l {
  8908  					return io.ErrUnexpectedEOF
  8909  				}
  8910  				b := dAtA[iNdEx]
  8911  				iNdEx++
  8912  				msglen |= int(b&0x7F) << shift
  8913  				if b < 0x80 {
  8914  					break
  8915  				}
  8916  			}
  8917  			if msglen < 0 {
  8918  				return ErrInvalidLengthUnknonwnproto
  8919  			}
  8920  			postIndex := iNdEx + msglen
  8921  			if postIndex < 0 {
  8922  				return ErrInvalidLengthUnknonwnproto
  8923  			}
  8924  			if postIndex > l {
  8925  				return io.ErrUnexpectedEOF
  8926  			}
  8927  			m.H = append(m.H, &TestVersion1{})
  8928  			if err := m.H[len(m.H)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8929  				return err
  8930  			}
  8931  			iNdEx = postIndex
  8932  		case 12:
  8933  			if wireType != 2 {
  8934  				return fmt.Errorf("proto: wrong wireType = %d for field Customer1", wireType)
  8935  			}
  8936  			var msglen int
  8937  			for shift := uint(0); ; shift += 7 {
  8938  				if shift >= 64 {
  8939  					return ErrIntOverflowUnknonwnproto
  8940  				}
  8941  				if iNdEx >= l {
  8942  					return io.ErrUnexpectedEOF
  8943  				}
  8944  				b := dAtA[iNdEx]
  8945  				iNdEx++
  8946  				msglen |= int(b&0x7F) << shift
  8947  				if b < 0x80 {
  8948  					break
  8949  				}
  8950  			}
  8951  			if msglen < 0 {
  8952  				return ErrInvalidLengthUnknonwnproto
  8953  			}
  8954  			postIndex := iNdEx + msglen
  8955  			if postIndex < 0 {
  8956  				return ErrInvalidLengthUnknonwnproto
  8957  			}
  8958  			if postIndex > l {
  8959  				return io.ErrUnexpectedEOF
  8960  			}
  8961  			if m.Customer1 == nil {
  8962  				m.Customer1 = &Customer1{}
  8963  			}
  8964  			if err := m.Customer1.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8965  				return err
  8966  			}
  8967  			iNdEx = postIndex
  8968  		case 25:
  8969  			if wireType != 0 {
  8970  				return fmt.Errorf("proto: wrong wireType = %d for field NewField", wireType)
  8971  			}
  8972  			m.NewField = 0
  8973  			for shift := uint(0); ; shift += 7 {
  8974  				if shift >= 64 {
  8975  					return ErrIntOverflowUnknonwnproto
  8976  				}
  8977  				if iNdEx >= l {
  8978  					return io.ErrUnexpectedEOF
  8979  				}
  8980  				b := dAtA[iNdEx]
  8981  				iNdEx++
  8982  				m.NewField |= uint64(b&0x7F) << shift
  8983  				if b < 0x80 {
  8984  					break
  8985  				}
  8986  			}
  8987  		default:
  8988  			iNdEx = preIndex
  8989  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
  8990  			if err != nil {
  8991  				return err
  8992  			}
  8993  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  8994  				return ErrInvalidLengthUnknonwnproto
  8995  			}
  8996  			if (iNdEx + skippy) > l {
  8997  				return io.ErrUnexpectedEOF
  8998  			}
  8999  			iNdEx += skippy
  9000  		}
  9001  	}
  9002  
  9003  	if iNdEx > l {
  9004  		return io.ErrUnexpectedEOF
  9005  	}
  9006  	return nil
  9007  }
  9008  func (m *TestVersion3) Unmarshal(dAtA []byte) error {
  9009  	l := len(dAtA)
  9010  	iNdEx := 0
  9011  	for iNdEx < l {
  9012  		preIndex := iNdEx
  9013  		var wire uint64
  9014  		for shift := uint(0); ; shift += 7 {
  9015  			if shift >= 64 {
  9016  				return ErrIntOverflowUnknonwnproto
  9017  			}
  9018  			if iNdEx >= l {
  9019  				return io.ErrUnexpectedEOF
  9020  			}
  9021  			b := dAtA[iNdEx]
  9022  			iNdEx++
  9023  			wire |= uint64(b&0x7F) << shift
  9024  			if b < 0x80 {
  9025  				break
  9026  			}
  9027  		}
  9028  		fieldNum := int32(wire >> 3)
  9029  		wireType := int(wire & 0x7)
  9030  		if wireType == 4 {
  9031  			return fmt.Errorf("proto: TestVersion3: wiretype end group for non-group")
  9032  		}
  9033  		if fieldNum <= 0 {
  9034  			return fmt.Errorf("proto: TestVersion3: illegal tag %d (wire type %d)", fieldNum, wire)
  9035  		}
  9036  		switch fieldNum {
  9037  		case 1:
  9038  			if wireType != 0 {
  9039  				return fmt.Errorf("proto: wrong wireType = %d for field X", wireType)
  9040  			}
  9041  			m.X = 0
  9042  			for shift := uint(0); ; shift += 7 {
  9043  				if shift >= 64 {
  9044  					return ErrIntOverflowUnknonwnproto
  9045  				}
  9046  				if iNdEx >= l {
  9047  					return io.ErrUnexpectedEOF
  9048  				}
  9049  				b := dAtA[iNdEx]
  9050  				iNdEx++
  9051  				m.X |= int64(b&0x7F) << shift
  9052  				if b < 0x80 {
  9053  					break
  9054  				}
  9055  			}
  9056  		case 2:
  9057  			if wireType != 2 {
  9058  				return fmt.Errorf("proto: wrong wireType = %d for field A", wireType)
  9059  			}
  9060  			var msglen int
  9061  			for shift := uint(0); ; shift += 7 {
  9062  				if shift >= 64 {
  9063  					return ErrIntOverflowUnknonwnproto
  9064  				}
  9065  				if iNdEx >= l {
  9066  					return io.ErrUnexpectedEOF
  9067  				}
  9068  				b := dAtA[iNdEx]
  9069  				iNdEx++
  9070  				msglen |= int(b&0x7F) << shift
  9071  				if b < 0x80 {
  9072  					break
  9073  				}
  9074  			}
  9075  			if msglen < 0 {
  9076  				return ErrInvalidLengthUnknonwnproto
  9077  			}
  9078  			postIndex := iNdEx + msglen
  9079  			if postIndex < 0 {
  9080  				return ErrInvalidLengthUnknonwnproto
  9081  			}
  9082  			if postIndex > l {
  9083  				return io.ErrUnexpectedEOF
  9084  			}
  9085  			if m.A == nil {
  9086  				m.A = &TestVersion3{}
  9087  			}
  9088  			if err := m.A.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9089  				return err
  9090  			}
  9091  			iNdEx = postIndex
  9092  		case 3:
  9093  			if wireType != 2 {
  9094  				return fmt.Errorf("proto: wrong wireType = %d for field B", wireType)
  9095  			}
  9096  			var msglen int
  9097  			for shift := uint(0); ; shift += 7 {
  9098  				if shift >= 64 {
  9099  					return ErrIntOverflowUnknonwnproto
  9100  				}
  9101  				if iNdEx >= l {
  9102  					return io.ErrUnexpectedEOF
  9103  				}
  9104  				b := dAtA[iNdEx]
  9105  				iNdEx++
  9106  				msglen |= int(b&0x7F) << shift
  9107  				if b < 0x80 {
  9108  					break
  9109  				}
  9110  			}
  9111  			if msglen < 0 {
  9112  				return ErrInvalidLengthUnknonwnproto
  9113  			}
  9114  			postIndex := iNdEx + msglen
  9115  			if postIndex < 0 {
  9116  				return ErrInvalidLengthUnknonwnproto
  9117  			}
  9118  			if postIndex > l {
  9119  				return io.ErrUnexpectedEOF
  9120  			}
  9121  			if m.B == nil {
  9122  				m.B = &TestVersion3{}
  9123  			}
  9124  			if err := m.B.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9125  				return err
  9126  			}
  9127  			iNdEx = postIndex
  9128  		case 4:
  9129  			if wireType != 2 {
  9130  				return fmt.Errorf("proto: wrong wireType = %d for field C", wireType)
  9131  			}
  9132  			var msglen int
  9133  			for shift := uint(0); ; shift += 7 {
  9134  				if shift >= 64 {
  9135  					return ErrIntOverflowUnknonwnproto
  9136  				}
  9137  				if iNdEx >= l {
  9138  					return io.ErrUnexpectedEOF
  9139  				}
  9140  				b := dAtA[iNdEx]
  9141  				iNdEx++
  9142  				msglen |= int(b&0x7F) << shift
  9143  				if b < 0x80 {
  9144  					break
  9145  				}
  9146  			}
  9147  			if msglen < 0 {
  9148  				return ErrInvalidLengthUnknonwnproto
  9149  			}
  9150  			postIndex := iNdEx + msglen
  9151  			if postIndex < 0 {
  9152  				return ErrInvalidLengthUnknonwnproto
  9153  			}
  9154  			if postIndex > l {
  9155  				return io.ErrUnexpectedEOF
  9156  			}
  9157  			m.C = append(m.C, &TestVersion3{})
  9158  			if err := m.C[len(m.C)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9159  				return err
  9160  			}
  9161  			iNdEx = postIndex
  9162  		case 5:
  9163  			if wireType != 2 {
  9164  				return fmt.Errorf("proto: wrong wireType = %d for field D", wireType)
  9165  			}
  9166  			var msglen int
  9167  			for shift := uint(0); ; shift += 7 {
  9168  				if shift >= 64 {
  9169  					return ErrIntOverflowUnknonwnproto
  9170  				}
  9171  				if iNdEx >= l {
  9172  					return io.ErrUnexpectedEOF
  9173  				}
  9174  				b := dAtA[iNdEx]
  9175  				iNdEx++
  9176  				msglen |= int(b&0x7F) << shift
  9177  				if b < 0x80 {
  9178  					break
  9179  				}
  9180  			}
  9181  			if msglen < 0 {
  9182  				return ErrInvalidLengthUnknonwnproto
  9183  			}
  9184  			postIndex := iNdEx + msglen
  9185  			if postIndex < 0 {
  9186  				return ErrInvalidLengthUnknonwnproto
  9187  			}
  9188  			if postIndex > l {
  9189  				return io.ErrUnexpectedEOF
  9190  			}
  9191  			m.D = append(m.D, &TestVersion3{})
  9192  			if err := m.D[len(m.D)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9193  				return err
  9194  			}
  9195  			iNdEx = postIndex
  9196  		case 6:
  9197  			if wireType != 0 {
  9198  				return fmt.Errorf("proto: wrong wireType = %d for field E", wireType)
  9199  			}
  9200  			var v int32
  9201  			for shift := uint(0); ; shift += 7 {
  9202  				if shift >= 64 {
  9203  					return ErrIntOverflowUnknonwnproto
  9204  				}
  9205  				if iNdEx >= l {
  9206  					return io.ErrUnexpectedEOF
  9207  				}
  9208  				b := dAtA[iNdEx]
  9209  				iNdEx++
  9210  				v |= int32(b&0x7F) << shift
  9211  				if b < 0x80 {
  9212  					break
  9213  				}
  9214  			}
  9215  			m.Sum = &TestVersion3_E{v}
  9216  		case 7:
  9217  			if wireType != 2 {
  9218  				return fmt.Errorf("proto: wrong wireType = %d for field F", wireType)
  9219  			}
  9220  			var msglen int
  9221  			for shift := uint(0); ; shift += 7 {
  9222  				if shift >= 64 {
  9223  					return ErrIntOverflowUnknonwnproto
  9224  				}
  9225  				if iNdEx >= l {
  9226  					return io.ErrUnexpectedEOF
  9227  				}
  9228  				b := dAtA[iNdEx]
  9229  				iNdEx++
  9230  				msglen |= int(b&0x7F) << shift
  9231  				if b < 0x80 {
  9232  					break
  9233  				}
  9234  			}
  9235  			if msglen < 0 {
  9236  				return ErrInvalidLengthUnknonwnproto
  9237  			}
  9238  			postIndex := iNdEx + msglen
  9239  			if postIndex < 0 {
  9240  				return ErrInvalidLengthUnknonwnproto
  9241  			}
  9242  			if postIndex > l {
  9243  				return io.ErrUnexpectedEOF
  9244  			}
  9245  			v := &TestVersion3{}
  9246  			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9247  				return err
  9248  			}
  9249  			m.Sum = &TestVersion3_F{v}
  9250  			iNdEx = postIndex
  9251  		case 8:
  9252  			if wireType != 2 {
  9253  				return fmt.Errorf("proto: wrong wireType = %d for field G", wireType)
  9254  			}
  9255  			var msglen int
  9256  			for shift := uint(0); ; shift += 7 {
  9257  				if shift >= 64 {
  9258  					return ErrIntOverflowUnknonwnproto
  9259  				}
  9260  				if iNdEx >= l {
  9261  					return io.ErrUnexpectedEOF
  9262  				}
  9263  				b := dAtA[iNdEx]
  9264  				iNdEx++
  9265  				msglen |= int(b&0x7F) << shift
  9266  				if b < 0x80 {
  9267  					break
  9268  				}
  9269  			}
  9270  			if msglen < 0 {
  9271  				return ErrInvalidLengthUnknonwnproto
  9272  			}
  9273  			postIndex := iNdEx + msglen
  9274  			if postIndex < 0 {
  9275  				return ErrInvalidLengthUnknonwnproto
  9276  			}
  9277  			if postIndex > l {
  9278  				return io.ErrUnexpectedEOF
  9279  			}
  9280  			if m.G == nil {
  9281  				m.G = &types.Any{}
  9282  			}
  9283  			if err := m.G.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9284  				return err
  9285  			}
  9286  			iNdEx = postIndex
  9287  		case 9:
  9288  			if wireType != 2 {
  9289  				return fmt.Errorf("proto: wrong wireType = %d for field H", wireType)
  9290  			}
  9291  			var msglen int
  9292  			for shift := uint(0); ; shift += 7 {
  9293  				if shift >= 64 {
  9294  					return ErrIntOverflowUnknonwnproto
  9295  				}
  9296  				if iNdEx >= l {
  9297  					return io.ErrUnexpectedEOF
  9298  				}
  9299  				b := dAtA[iNdEx]
  9300  				iNdEx++
  9301  				msglen |= int(b&0x7F) << shift
  9302  				if b < 0x80 {
  9303  					break
  9304  				}
  9305  			}
  9306  			if msglen < 0 {
  9307  				return ErrInvalidLengthUnknonwnproto
  9308  			}
  9309  			postIndex := iNdEx + msglen
  9310  			if postIndex < 0 {
  9311  				return ErrInvalidLengthUnknonwnproto
  9312  			}
  9313  			if postIndex > l {
  9314  				return io.ErrUnexpectedEOF
  9315  			}
  9316  			m.H = append(m.H, &TestVersion1{})
  9317  			if err := m.H[len(m.H)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9318  				return err
  9319  			}
  9320  			iNdEx = postIndex
  9321  		case 12:
  9322  			if wireType != 2 {
  9323  				return fmt.Errorf("proto: wrong wireType = %d for field Customer1", wireType)
  9324  			}
  9325  			var msglen int
  9326  			for shift := uint(0); ; shift += 7 {
  9327  				if shift >= 64 {
  9328  					return ErrIntOverflowUnknonwnproto
  9329  				}
  9330  				if iNdEx >= l {
  9331  					return io.ErrUnexpectedEOF
  9332  				}
  9333  				b := dAtA[iNdEx]
  9334  				iNdEx++
  9335  				msglen |= int(b&0x7F) << shift
  9336  				if b < 0x80 {
  9337  					break
  9338  				}
  9339  			}
  9340  			if msglen < 0 {
  9341  				return ErrInvalidLengthUnknonwnproto
  9342  			}
  9343  			postIndex := iNdEx + msglen
  9344  			if postIndex < 0 {
  9345  				return ErrInvalidLengthUnknonwnproto
  9346  			}
  9347  			if postIndex > l {
  9348  				return io.ErrUnexpectedEOF
  9349  			}
  9350  			if m.Customer1 == nil {
  9351  				m.Customer1 = &Customer1{}
  9352  			}
  9353  			if err := m.Customer1.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9354  				return err
  9355  			}
  9356  			iNdEx = postIndex
  9357  		case 1031:
  9358  			if wireType != 2 {
  9359  				return fmt.Errorf("proto: wrong wireType = %d for field NonCriticalField", wireType)
  9360  			}
  9361  			var stringLen uint64
  9362  			for shift := uint(0); ; shift += 7 {
  9363  				if shift >= 64 {
  9364  					return ErrIntOverflowUnknonwnproto
  9365  				}
  9366  				if iNdEx >= l {
  9367  					return io.ErrUnexpectedEOF
  9368  				}
  9369  				b := dAtA[iNdEx]
  9370  				iNdEx++
  9371  				stringLen |= uint64(b&0x7F) << shift
  9372  				if b < 0x80 {
  9373  					break
  9374  				}
  9375  			}
  9376  			intStringLen := int(stringLen)
  9377  			if intStringLen < 0 {
  9378  				return ErrInvalidLengthUnknonwnproto
  9379  			}
  9380  			postIndex := iNdEx + intStringLen
  9381  			if postIndex < 0 {
  9382  				return ErrInvalidLengthUnknonwnproto
  9383  			}
  9384  			if postIndex > l {
  9385  				return io.ErrUnexpectedEOF
  9386  			}
  9387  			m.NonCriticalField = string(dAtA[iNdEx:postIndex])
  9388  			iNdEx = postIndex
  9389  		default:
  9390  			iNdEx = preIndex
  9391  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
  9392  			if err != nil {
  9393  				return err
  9394  			}
  9395  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  9396  				return ErrInvalidLengthUnknonwnproto
  9397  			}
  9398  			if (iNdEx + skippy) > l {
  9399  				return io.ErrUnexpectedEOF
  9400  			}
  9401  			iNdEx += skippy
  9402  		}
  9403  	}
  9404  
  9405  	if iNdEx > l {
  9406  		return io.ErrUnexpectedEOF
  9407  	}
  9408  	return nil
  9409  }
  9410  func (m *TestVersion3LoneOneOfValue) Unmarshal(dAtA []byte) error {
  9411  	l := len(dAtA)
  9412  	iNdEx := 0
  9413  	for iNdEx < l {
  9414  		preIndex := iNdEx
  9415  		var wire uint64
  9416  		for shift := uint(0); ; shift += 7 {
  9417  			if shift >= 64 {
  9418  				return ErrIntOverflowUnknonwnproto
  9419  			}
  9420  			if iNdEx >= l {
  9421  				return io.ErrUnexpectedEOF
  9422  			}
  9423  			b := dAtA[iNdEx]
  9424  			iNdEx++
  9425  			wire |= uint64(b&0x7F) << shift
  9426  			if b < 0x80 {
  9427  				break
  9428  			}
  9429  		}
  9430  		fieldNum := int32(wire >> 3)
  9431  		wireType := int(wire & 0x7)
  9432  		if wireType == 4 {
  9433  			return fmt.Errorf("proto: TestVersion3LoneOneOfValue: wiretype end group for non-group")
  9434  		}
  9435  		if fieldNum <= 0 {
  9436  			return fmt.Errorf("proto: TestVersion3LoneOneOfValue: illegal tag %d (wire type %d)", fieldNum, wire)
  9437  		}
  9438  		switch fieldNum {
  9439  		case 1:
  9440  			if wireType != 0 {
  9441  				return fmt.Errorf("proto: wrong wireType = %d for field X", wireType)
  9442  			}
  9443  			m.X = 0
  9444  			for shift := uint(0); ; shift += 7 {
  9445  				if shift >= 64 {
  9446  					return ErrIntOverflowUnknonwnproto
  9447  				}
  9448  				if iNdEx >= l {
  9449  					return io.ErrUnexpectedEOF
  9450  				}
  9451  				b := dAtA[iNdEx]
  9452  				iNdEx++
  9453  				m.X |= int64(b&0x7F) << shift
  9454  				if b < 0x80 {
  9455  					break
  9456  				}
  9457  			}
  9458  		case 2:
  9459  			if wireType != 2 {
  9460  				return fmt.Errorf("proto: wrong wireType = %d for field A", wireType)
  9461  			}
  9462  			var msglen int
  9463  			for shift := uint(0); ; shift += 7 {
  9464  				if shift >= 64 {
  9465  					return ErrIntOverflowUnknonwnproto
  9466  				}
  9467  				if iNdEx >= l {
  9468  					return io.ErrUnexpectedEOF
  9469  				}
  9470  				b := dAtA[iNdEx]
  9471  				iNdEx++
  9472  				msglen |= int(b&0x7F) << shift
  9473  				if b < 0x80 {
  9474  					break
  9475  				}
  9476  			}
  9477  			if msglen < 0 {
  9478  				return ErrInvalidLengthUnknonwnproto
  9479  			}
  9480  			postIndex := iNdEx + msglen
  9481  			if postIndex < 0 {
  9482  				return ErrInvalidLengthUnknonwnproto
  9483  			}
  9484  			if postIndex > l {
  9485  				return io.ErrUnexpectedEOF
  9486  			}
  9487  			if m.A == nil {
  9488  				m.A = &TestVersion3{}
  9489  			}
  9490  			if err := m.A.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9491  				return err
  9492  			}
  9493  			iNdEx = postIndex
  9494  		case 3:
  9495  			if wireType != 2 {
  9496  				return fmt.Errorf("proto: wrong wireType = %d for field B", wireType)
  9497  			}
  9498  			var msglen int
  9499  			for shift := uint(0); ; shift += 7 {
  9500  				if shift >= 64 {
  9501  					return ErrIntOverflowUnknonwnproto
  9502  				}
  9503  				if iNdEx >= l {
  9504  					return io.ErrUnexpectedEOF
  9505  				}
  9506  				b := dAtA[iNdEx]
  9507  				iNdEx++
  9508  				msglen |= int(b&0x7F) << shift
  9509  				if b < 0x80 {
  9510  					break
  9511  				}
  9512  			}
  9513  			if msglen < 0 {
  9514  				return ErrInvalidLengthUnknonwnproto
  9515  			}
  9516  			postIndex := iNdEx + msglen
  9517  			if postIndex < 0 {
  9518  				return ErrInvalidLengthUnknonwnproto
  9519  			}
  9520  			if postIndex > l {
  9521  				return io.ErrUnexpectedEOF
  9522  			}
  9523  			if m.B == nil {
  9524  				m.B = &TestVersion3{}
  9525  			}
  9526  			if err := m.B.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9527  				return err
  9528  			}
  9529  			iNdEx = postIndex
  9530  		case 4:
  9531  			if wireType != 2 {
  9532  				return fmt.Errorf("proto: wrong wireType = %d for field C", wireType)
  9533  			}
  9534  			var msglen int
  9535  			for shift := uint(0); ; shift += 7 {
  9536  				if shift >= 64 {
  9537  					return ErrIntOverflowUnknonwnproto
  9538  				}
  9539  				if iNdEx >= l {
  9540  					return io.ErrUnexpectedEOF
  9541  				}
  9542  				b := dAtA[iNdEx]
  9543  				iNdEx++
  9544  				msglen |= int(b&0x7F) << shift
  9545  				if b < 0x80 {
  9546  					break
  9547  				}
  9548  			}
  9549  			if msglen < 0 {
  9550  				return ErrInvalidLengthUnknonwnproto
  9551  			}
  9552  			postIndex := iNdEx + msglen
  9553  			if postIndex < 0 {
  9554  				return ErrInvalidLengthUnknonwnproto
  9555  			}
  9556  			if postIndex > l {
  9557  				return io.ErrUnexpectedEOF
  9558  			}
  9559  			m.C = append(m.C, &TestVersion3{})
  9560  			if err := m.C[len(m.C)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9561  				return err
  9562  			}
  9563  			iNdEx = postIndex
  9564  		case 5:
  9565  			if wireType != 2 {
  9566  				return fmt.Errorf("proto: wrong wireType = %d for field D", wireType)
  9567  			}
  9568  			var msglen int
  9569  			for shift := uint(0); ; shift += 7 {
  9570  				if shift >= 64 {
  9571  					return ErrIntOverflowUnknonwnproto
  9572  				}
  9573  				if iNdEx >= l {
  9574  					return io.ErrUnexpectedEOF
  9575  				}
  9576  				b := dAtA[iNdEx]
  9577  				iNdEx++
  9578  				msglen |= int(b&0x7F) << shift
  9579  				if b < 0x80 {
  9580  					break
  9581  				}
  9582  			}
  9583  			if msglen < 0 {
  9584  				return ErrInvalidLengthUnknonwnproto
  9585  			}
  9586  			postIndex := iNdEx + msglen
  9587  			if postIndex < 0 {
  9588  				return ErrInvalidLengthUnknonwnproto
  9589  			}
  9590  			if postIndex > l {
  9591  				return io.ErrUnexpectedEOF
  9592  			}
  9593  			m.D = append(m.D, &TestVersion3{})
  9594  			if err := m.D[len(m.D)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9595  				return err
  9596  			}
  9597  			iNdEx = postIndex
  9598  		case 6:
  9599  			if wireType != 0 {
  9600  				return fmt.Errorf("proto: wrong wireType = %d for field E", wireType)
  9601  			}
  9602  			var v int32
  9603  			for shift := uint(0); ; shift += 7 {
  9604  				if shift >= 64 {
  9605  					return ErrIntOverflowUnknonwnproto
  9606  				}
  9607  				if iNdEx >= l {
  9608  					return io.ErrUnexpectedEOF
  9609  				}
  9610  				b := dAtA[iNdEx]
  9611  				iNdEx++
  9612  				v |= int32(b&0x7F) << shift
  9613  				if b < 0x80 {
  9614  					break
  9615  				}
  9616  			}
  9617  			m.Sum = &TestVersion3LoneOneOfValue_E{v}
  9618  		case 8:
  9619  			if wireType != 2 {
  9620  				return fmt.Errorf("proto: wrong wireType = %d for field G", wireType)
  9621  			}
  9622  			var msglen int
  9623  			for shift := uint(0); ; shift += 7 {
  9624  				if shift >= 64 {
  9625  					return ErrIntOverflowUnknonwnproto
  9626  				}
  9627  				if iNdEx >= l {
  9628  					return io.ErrUnexpectedEOF
  9629  				}
  9630  				b := dAtA[iNdEx]
  9631  				iNdEx++
  9632  				msglen |= int(b&0x7F) << shift
  9633  				if b < 0x80 {
  9634  					break
  9635  				}
  9636  			}
  9637  			if msglen < 0 {
  9638  				return ErrInvalidLengthUnknonwnproto
  9639  			}
  9640  			postIndex := iNdEx + msglen
  9641  			if postIndex < 0 {
  9642  				return ErrInvalidLengthUnknonwnproto
  9643  			}
  9644  			if postIndex > l {
  9645  				return io.ErrUnexpectedEOF
  9646  			}
  9647  			if m.G == nil {
  9648  				m.G = &types.Any{}
  9649  			}
  9650  			if err := m.G.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9651  				return err
  9652  			}
  9653  			iNdEx = postIndex
  9654  		case 9:
  9655  			if wireType != 2 {
  9656  				return fmt.Errorf("proto: wrong wireType = %d for field H", wireType)
  9657  			}
  9658  			var msglen int
  9659  			for shift := uint(0); ; shift += 7 {
  9660  				if shift >= 64 {
  9661  					return ErrIntOverflowUnknonwnproto
  9662  				}
  9663  				if iNdEx >= l {
  9664  					return io.ErrUnexpectedEOF
  9665  				}
  9666  				b := dAtA[iNdEx]
  9667  				iNdEx++
  9668  				msglen |= int(b&0x7F) << shift
  9669  				if b < 0x80 {
  9670  					break
  9671  				}
  9672  			}
  9673  			if msglen < 0 {
  9674  				return ErrInvalidLengthUnknonwnproto
  9675  			}
  9676  			postIndex := iNdEx + msglen
  9677  			if postIndex < 0 {
  9678  				return ErrInvalidLengthUnknonwnproto
  9679  			}
  9680  			if postIndex > l {
  9681  				return io.ErrUnexpectedEOF
  9682  			}
  9683  			m.H = append(m.H, &TestVersion1{})
  9684  			if err := m.H[len(m.H)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9685  				return err
  9686  			}
  9687  			iNdEx = postIndex
  9688  		case 12:
  9689  			if wireType != 2 {
  9690  				return fmt.Errorf("proto: wrong wireType = %d for field Customer1", wireType)
  9691  			}
  9692  			var msglen int
  9693  			for shift := uint(0); ; shift += 7 {
  9694  				if shift >= 64 {
  9695  					return ErrIntOverflowUnknonwnproto
  9696  				}
  9697  				if iNdEx >= l {
  9698  					return io.ErrUnexpectedEOF
  9699  				}
  9700  				b := dAtA[iNdEx]
  9701  				iNdEx++
  9702  				msglen |= int(b&0x7F) << shift
  9703  				if b < 0x80 {
  9704  					break
  9705  				}
  9706  			}
  9707  			if msglen < 0 {
  9708  				return ErrInvalidLengthUnknonwnproto
  9709  			}
  9710  			postIndex := iNdEx + msglen
  9711  			if postIndex < 0 {
  9712  				return ErrInvalidLengthUnknonwnproto
  9713  			}
  9714  			if postIndex > l {
  9715  				return io.ErrUnexpectedEOF
  9716  			}
  9717  			if m.Customer1 == nil {
  9718  				m.Customer1 = &Customer1{}
  9719  			}
  9720  			if err := m.Customer1.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9721  				return err
  9722  			}
  9723  			iNdEx = postIndex
  9724  		case 1031:
  9725  			if wireType != 2 {
  9726  				return fmt.Errorf("proto: wrong wireType = %d for field NonCriticalField", wireType)
  9727  			}
  9728  			var stringLen uint64
  9729  			for shift := uint(0); ; shift += 7 {
  9730  				if shift >= 64 {
  9731  					return ErrIntOverflowUnknonwnproto
  9732  				}
  9733  				if iNdEx >= l {
  9734  					return io.ErrUnexpectedEOF
  9735  				}
  9736  				b := dAtA[iNdEx]
  9737  				iNdEx++
  9738  				stringLen |= uint64(b&0x7F) << shift
  9739  				if b < 0x80 {
  9740  					break
  9741  				}
  9742  			}
  9743  			intStringLen := int(stringLen)
  9744  			if intStringLen < 0 {
  9745  				return ErrInvalidLengthUnknonwnproto
  9746  			}
  9747  			postIndex := iNdEx + intStringLen
  9748  			if postIndex < 0 {
  9749  				return ErrInvalidLengthUnknonwnproto
  9750  			}
  9751  			if postIndex > l {
  9752  				return io.ErrUnexpectedEOF
  9753  			}
  9754  			m.NonCriticalField = string(dAtA[iNdEx:postIndex])
  9755  			iNdEx = postIndex
  9756  		default:
  9757  			iNdEx = preIndex
  9758  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
  9759  			if err != nil {
  9760  				return err
  9761  			}
  9762  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  9763  				return ErrInvalidLengthUnknonwnproto
  9764  			}
  9765  			if (iNdEx + skippy) > l {
  9766  				return io.ErrUnexpectedEOF
  9767  			}
  9768  			iNdEx += skippy
  9769  		}
  9770  	}
  9771  
  9772  	if iNdEx > l {
  9773  		return io.ErrUnexpectedEOF
  9774  	}
  9775  	return nil
  9776  }
  9777  func (m *TestVersion3LoneNesting) Unmarshal(dAtA []byte) error {
  9778  	l := len(dAtA)
  9779  	iNdEx := 0
  9780  	for iNdEx < l {
  9781  		preIndex := iNdEx
  9782  		var wire uint64
  9783  		for shift := uint(0); ; shift += 7 {
  9784  			if shift >= 64 {
  9785  				return ErrIntOverflowUnknonwnproto
  9786  			}
  9787  			if iNdEx >= l {
  9788  				return io.ErrUnexpectedEOF
  9789  			}
  9790  			b := dAtA[iNdEx]
  9791  			iNdEx++
  9792  			wire |= uint64(b&0x7F) << shift
  9793  			if b < 0x80 {
  9794  				break
  9795  			}
  9796  		}
  9797  		fieldNum := int32(wire >> 3)
  9798  		wireType := int(wire & 0x7)
  9799  		if wireType == 4 {
  9800  			return fmt.Errorf("proto: TestVersion3LoneNesting: wiretype end group for non-group")
  9801  		}
  9802  		if fieldNum <= 0 {
  9803  			return fmt.Errorf("proto: TestVersion3LoneNesting: illegal tag %d (wire type %d)", fieldNum, wire)
  9804  		}
  9805  		switch fieldNum {
  9806  		case 1:
  9807  			if wireType != 0 {
  9808  				return fmt.Errorf("proto: wrong wireType = %d for field X", wireType)
  9809  			}
  9810  			m.X = 0
  9811  			for shift := uint(0); ; shift += 7 {
  9812  				if shift >= 64 {
  9813  					return ErrIntOverflowUnknonwnproto
  9814  				}
  9815  				if iNdEx >= l {
  9816  					return io.ErrUnexpectedEOF
  9817  				}
  9818  				b := dAtA[iNdEx]
  9819  				iNdEx++
  9820  				m.X |= int64(b&0x7F) << shift
  9821  				if b < 0x80 {
  9822  					break
  9823  				}
  9824  			}
  9825  		case 2:
  9826  			if wireType != 2 {
  9827  				return fmt.Errorf("proto: wrong wireType = %d for field A", wireType)
  9828  			}
  9829  			var msglen int
  9830  			for shift := uint(0); ; shift += 7 {
  9831  				if shift >= 64 {
  9832  					return ErrIntOverflowUnknonwnproto
  9833  				}
  9834  				if iNdEx >= l {
  9835  					return io.ErrUnexpectedEOF
  9836  				}
  9837  				b := dAtA[iNdEx]
  9838  				iNdEx++
  9839  				msglen |= int(b&0x7F) << shift
  9840  				if b < 0x80 {
  9841  					break
  9842  				}
  9843  			}
  9844  			if msglen < 0 {
  9845  				return ErrInvalidLengthUnknonwnproto
  9846  			}
  9847  			postIndex := iNdEx + msglen
  9848  			if postIndex < 0 {
  9849  				return ErrInvalidLengthUnknonwnproto
  9850  			}
  9851  			if postIndex > l {
  9852  				return io.ErrUnexpectedEOF
  9853  			}
  9854  			if m.A == nil {
  9855  				m.A = &TestVersion3{}
  9856  			}
  9857  			if err := m.A.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9858  				return err
  9859  			}
  9860  			iNdEx = postIndex
  9861  		case 3:
  9862  			if wireType != 2 {
  9863  				return fmt.Errorf("proto: wrong wireType = %d for field B", wireType)
  9864  			}
  9865  			var msglen int
  9866  			for shift := uint(0); ; shift += 7 {
  9867  				if shift >= 64 {
  9868  					return ErrIntOverflowUnknonwnproto
  9869  				}
  9870  				if iNdEx >= l {
  9871  					return io.ErrUnexpectedEOF
  9872  				}
  9873  				b := dAtA[iNdEx]
  9874  				iNdEx++
  9875  				msglen |= int(b&0x7F) << shift
  9876  				if b < 0x80 {
  9877  					break
  9878  				}
  9879  			}
  9880  			if msglen < 0 {
  9881  				return ErrInvalidLengthUnknonwnproto
  9882  			}
  9883  			postIndex := iNdEx + msglen
  9884  			if postIndex < 0 {
  9885  				return ErrInvalidLengthUnknonwnproto
  9886  			}
  9887  			if postIndex > l {
  9888  				return io.ErrUnexpectedEOF
  9889  			}
  9890  			if m.B == nil {
  9891  				m.B = &TestVersion3{}
  9892  			}
  9893  			if err := m.B.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9894  				return err
  9895  			}
  9896  			iNdEx = postIndex
  9897  		case 4:
  9898  			if wireType != 2 {
  9899  				return fmt.Errorf("proto: wrong wireType = %d for field C", wireType)
  9900  			}
  9901  			var msglen int
  9902  			for shift := uint(0); ; shift += 7 {
  9903  				if shift >= 64 {
  9904  					return ErrIntOverflowUnknonwnproto
  9905  				}
  9906  				if iNdEx >= l {
  9907  					return io.ErrUnexpectedEOF
  9908  				}
  9909  				b := dAtA[iNdEx]
  9910  				iNdEx++
  9911  				msglen |= int(b&0x7F) << shift
  9912  				if b < 0x80 {
  9913  					break
  9914  				}
  9915  			}
  9916  			if msglen < 0 {
  9917  				return ErrInvalidLengthUnknonwnproto
  9918  			}
  9919  			postIndex := iNdEx + msglen
  9920  			if postIndex < 0 {
  9921  				return ErrInvalidLengthUnknonwnproto
  9922  			}
  9923  			if postIndex > l {
  9924  				return io.ErrUnexpectedEOF
  9925  			}
  9926  			m.C = append(m.C, &TestVersion3{})
  9927  			if err := m.C[len(m.C)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9928  				return err
  9929  			}
  9930  			iNdEx = postIndex
  9931  		case 5:
  9932  			if wireType != 2 {
  9933  				return fmt.Errorf("proto: wrong wireType = %d for field D", wireType)
  9934  			}
  9935  			var msglen int
  9936  			for shift := uint(0); ; shift += 7 {
  9937  				if shift >= 64 {
  9938  					return ErrIntOverflowUnknonwnproto
  9939  				}
  9940  				if iNdEx >= l {
  9941  					return io.ErrUnexpectedEOF
  9942  				}
  9943  				b := dAtA[iNdEx]
  9944  				iNdEx++
  9945  				msglen |= int(b&0x7F) << shift
  9946  				if b < 0x80 {
  9947  					break
  9948  				}
  9949  			}
  9950  			if msglen < 0 {
  9951  				return ErrInvalidLengthUnknonwnproto
  9952  			}
  9953  			postIndex := iNdEx + msglen
  9954  			if postIndex < 0 {
  9955  				return ErrInvalidLengthUnknonwnproto
  9956  			}
  9957  			if postIndex > l {
  9958  				return io.ErrUnexpectedEOF
  9959  			}
  9960  			m.D = append(m.D, &TestVersion3{})
  9961  			if err := m.D[len(m.D)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9962  				return err
  9963  			}
  9964  			iNdEx = postIndex
  9965  		case 7:
  9966  			if wireType != 2 {
  9967  				return fmt.Errorf("proto: wrong wireType = %d for field F", wireType)
  9968  			}
  9969  			var msglen int
  9970  			for shift := uint(0); ; shift += 7 {
  9971  				if shift >= 64 {
  9972  					return ErrIntOverflowUnknonwnproto
  9973  				}
  9974  				if iNdEx >= l {
  9975  					return io.ErrUnexpectedEOF
  9976  				}
  9977  				b := dAtA[iNdEx]
  9978  				iNdEx++
  9979  				msglen |= int(b&0x7F) << shift
  9980  				if b < 0x80 {
  9981  					break
  9982  				}
  9983  			}
  9984  			if msglen < 0 {
  9985  				return ErrInvalidLengthUnknonwnproto
  9986  			}
  9987  			postIndex := iNdEx + msglen
  9988  			if postIndex < 0 {
  9989  				return ErrInvalidLengthUnknonwnproto
  9990  			}
  9991  			if postIndex > l {
  9992  				return io.ErrUnexpectedEOF
  9993  			}
  9994  			v := &TestVersion3LoneNesting{}
  9995  			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9996  				return err
  9997  			}
  9998  			m.Sum = &TestVersion3LoneNesting_F{v}
  9999  			iNdEx = postIndex
 10000  		case 8:
 10001  			if wireType != 2 {
 10002  				return fmt.Errorf("proto: wrong wireType = %d for field G", wireType)
 10003  			}
 10004  			var msglen int
 10005  			for shift := uint(0); ; shift += 7 {
 10006  				if shift >= 64 {
 10007  					return ErrIntOverflowUnknonwnproto
 10008  				}
 10009  				if iNdEx >= l {
 10010  					return io.ErrUnexpectedEOF
 10011  				}
 10012  				b := dAtA[iNdEx]
 10013  				iNdEx++
 10014  				msglen |= int(b&0x7F) << shift
 10015  				if b < 0x80 {
 10016  					break
 10017  				}
 10018  			}
 10019  			if msglen < 0 {
 10020  				return ErrInvalidLengthUnknonwnproto
 10021  			}
 10022  			postIndex := iNdEx + msglen
 10023  			if postIndex < 0 {
 10024  				return ErrInvalidLengthUnknonwnproto
 10025  			}
 10026  			if postIndex > l {
 10027  				return io.ErrUnexpectedEOF
 10028  			}
 10029  			if m.G == nil {
 10030  				m.G = &types.Any{}
 10031  			}
 10032  			if err := m.G.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10033  				return err
 10034  			}
 10035  			iNdEx = postIndex
 10036  		case 9:
 10037  			if wireType != 2 {
 10038  				return fmt.Errorf("proto: wrong wireType = %d for field H", wireType)
 10039  			}
 10040  			var msglen int
 10041  			for shift := uint(0); ; shift += 7 {
 10042  				if shift >= 64 {
 10043  					return ErrIntOverflowUnknonwnproto
 10044  				}
 10045  				if iNdEx >= l {
 10046  					return io.ErrUnexpectedEOF
 10047  				}
 10048  				b := dAtA[iNdEx]
 10049  				iNdEx++
 10050  				msglen |= int(b&0x7F) << shift
 10051  				if b < 0x80 {
 10052  					break
 10053  				}
 10054  			}
 10055  			if msglen < 0 {
 10056  				return ErrInvalidLengthUnknonwnproto
 10057  			}
 10058  			postIndex := iNdEx + msglen
 10059  			if postIndex < 0 {
 10060  				return ErrInvalidLengthUnknonwnproto
 10061  			}
 10062  			if postIndex > l {
 10063  				return io.ErrUnexpectedEOF
 10064  			}
 10065  			m.H = append(m.H, &TestVersion1{})
 10066  			if err := m.H[len(m.H)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10067  				return err
 10068  			}
 10069  			iNdEx = postIndex
 10070  		case 12:
 10071  			if wireType != 2 {
 10072  				return fmt.Errorf("proto: wrong wireType = %d for field Customer1", wireType)
 10073  			}
 10074  			var msglen int
 10075  			for shift := uint(0); ; shift += 7 {
 10076  				if shift >= 64 {
 10077  					return ErrIntOverflowUnknonwnproto
 10078  				}
 10079  				if iNdEx >= l {
 10080  					return io.ErrUnexpectedEOF
 10081  				}
 10082  				b := dAtA[iNdEx]
 10083  				iNdEx++
 10084  				msglen |= int(b&0x7F) << shift
 10085  				if b < 0x80 {
 10086  					break
 10087  				}
 10088  			}
 10089  			if msglen < 0 {
 10090  				return ErrInvalidLengthUnknonwnproto
 10091  			}
 10092  			postIndex := iNdEx + msglen
 10093  			if postIndex < 0 {
 10094  				return ErrInvalidLengthUnknonwnproto
 10095  			}
 10096  			if postIndex > l {
 10097  				return io.ErrUnexpectedEOF
 10098  			}
 10099  			if m.Customer1 == nil {
 10100  				m.Customer1 = &Customer1{}
 10101  			}
 10102  			if err := m.Customer1.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10103  				return err
 10104  			}
 10105  			iNdEx = postIndex
 10106  		case 14:
 10107  			if wireType != 2 {
 10108  				return fmt.Errorf("proto: wrong wireType = %d for field Inner1", wireType)
 10109  			}
 10110  			var msglen int
 10111  			for shift := uint(0); ; shift += 7 {
 10112  				if shift >= 64 {
 10113  					return ErrIntOverflowUnknonwnproto
 10114  				}
 10115  				if iNdEx >= l {
 10116  					return io.ErrUnexpectedEOF
 10117  				}
 10118  				b := dAtA[iNdEx]
 10119  				iNdEx++
 10120  				msglen |= int(b&0x7F) << shift
 10121  				if b < 0x80 {
 10122  					break
 10123  				}
 10124  			}
 10125  			if msglen < 0 {
 10126  				return ErrInvalidLengthUnknonwnproto
 10127  			}
 10128  			postIndex := iNdEx + msglen
 10129  			if postIndex < 0 {
 10130  				return ErrInvalidLengthUnknonwnproto
 10131  			}
 10132  			if postIndex > l {
 10133  				return io.ErrUnexpectedEOF
 10134  			}
 10135  			if m.Inner1 == nil {
 10136  				m.Inner1 = &TestVersion3LoneNesting_Inner1{}
 10137  			}
 10138  			if err := m.Inner1.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10139  				return err
 10140  			}
 10141  			iNdEx = postIndex
 10142  		case 15:
 10143  			if wireType != 2 {
 10144  				return fmt.Errorf("proto: wrong wireType = %d for field Inner2", wireType)
 10145  			}
 10146  			var msglen int
 10147  			for shift := uint(0); ; shift += 7 {
 10148  				if shift >= 64 {
 10149  					return ErrIntOverflowUnknonwnproto
 10150  				}
 10151  				if iNdEx >= l {
 10152  					return io.ErrUnexpectedEOF
 10153  				}
 10154  				b := dAtA[iNdEx]
 10155  				iNdEx++
 10156  				msglen |= int(b&0x7F) << shift
 10157  				if b < 0x80 {
 10158  					break
 10159  				}
 10160  			}
 10161  			if msglen < 0 {
 10162  				return ErrInvalidLengthUnknonwnproto
 10163  			}
 10164  			postIndex := iNdEx + msglen
 10165  			if postIndex < 0 {
 10166  				return ErrInvalidLengthUnknonwnproto
 10167  			}
 10168  			if postIndex > l {
 10169  				return io.ErrUnexpectedEOF
 10170  			}
 10171  			if m.Inner2 == nil {
 10172  				m.Inner2 = &TestVersion3LoneNesting_Inner2{}
 10173  			}
 10174  			if err := m.Inner2.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10175  				return err
 10176  			}
 10177  			iNdEx = postIndex
 10178  		case 1031:
 10179  			if wireType != 2 {
 10180  				return fmt.Errorf("proto: wrong wireType = %d for field NonCriticalField", wireType)
 10181  			}
 10182  			var stringLen uint64
 10183  			for shift := uint(0); ; shift += 7 {
 10184  				if shift >= 64 {
 10185  					return ErrIntOverflowUnknonwnproto
 10186  				}
 10187  				if iNdEx >= l {
 10188  					return io.ErrUnexpectedEOF
 10189  				}
 10190  				b := dAtA[iNdEx]
 10191  				iNdEx++
 10192  				stringLen |= uint64(b&0x7F) << shift
 10193  				if b < 0x80 {
 10194  					break
 10195  				}
 10196  			}
 10197  			intStringLen := int(stringLen)
 10198  			if intStringLen < 0 {
 10199  				return ErrInvalidLengthUnknonwnproto
 10200  			}
 10201  			postIndex := iNdEx + intStringLen
 10202  			if postIndex < 0 {
 10203  				return ErrInvalidLengthUnknonwnproto
 10204  			}
 10205  			if postIndex > l {
 10206  				return io.ErrUnexpectedEOF
 10207  			}
 10208  			m.NonCriticalField = string(dAtA[iNdEx:postIndex])
 10209  			iNdEx = postIndex
 10210  		default:
 10211  			iNdEx = preIndex
 10212  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
 10213  			if err != nil {
 10214  				return err
 10215  			}
 10216  			if (skippy < 0) || (iNdEx+skippy) < 0 {
 10217  				return ErrInvalidLengthUnknonwnproto
 10218  			}
 10219  			if (iNdEx + skippy) > l {
 10220  				return io.ErrUnexpectedEOF
 10221  			}
 10222  			iNdEx += skippy
 10223  		}
 10224  	}
 10225  
 10226  	if iNdEx > l {
 10227  		return io.ErrUnexpectedEOF
 10228  	}
 10229  	return nil
 10230  }
 10231  func (m *TestVersion3LoneNesting_Inner1) Unmarshal(dAtA []byte) error {
 10232  	l := len(dAtA)
 10233  	iNdEx := 0
 10234  	for iNdEx < l {
 10235  		preIndex := iNdEx
 10236  		var wire uint64
 10237  		for shift := uint(0); ; shift += 7 {
 10238  			if shift >= 64 {
 10239  				return ErrIntOverflowUnknonwnproto
 10240  			}
 10241  			if iNdEx >= l {
 10242  				return io.ErrUnexpectedEOF
 10243  			}
 10244  			b := dAtA[iNdEx]
 10245  			iNdEx++
 10246  			wire |= uint64(b&0x7F) << shift
 10247  			if b < 0x80 {
 10248  				break
 10249  			}
 10250  		}
 10251  		fieldNum := int32(wire >> 3)
 10252  		wireType := int(wire & 0x7)
 10253  		if wireType == 4 {
 10254  			return fmt.Errorf("proto: Inner1: wiretype end group for non-group")
 10255  		}
 10256  		if fieldNum <= 0 {
 10257  			return fmt.Errorf("proto: Inner1: illegal tag %d (wire type %d)", fieldNum, wire)
 10258  		}
 10259  		switch fieldNum {
 10260  		case 1:
 10261  			if wireType != 0 {
 10262  				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
 10263  			}
 10264  			m.Id = 0
 10265  			for shift := uint(0); ; shift += 7 {
 10266  				if shift >= 64 {
 10267  					return ErrIntOverflowUnknonwnproto
 10268  				}
 10269  				if iNdEx >= l {
 10270  					return io.ErrUnexpectedEOF
 10271  				}
 10272  				b := dAtA[iNdEx]
 10273  				iNdEx++
 10274  				m.Id |= int64(b&0x7F) << shift
 10275  				if b < 0x80 {
 10276  					break
 10277  				}
 10278  			}
 10279  		case 2:
 10280  			if wireType != 2 {
 10281  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
 10282  			}
 10283  			var stringLen uint64
 10284  			for shift := uint(0); ; shift += 7 {
 10285  				if shift >= 64 {
 10286  					return ErrIntOverflowUnknonwnproto
 10287  				}
 10288  				if iNdEx >= l {
 10289  					return io.ErrUnexpectedEOF
 10290  				}
 10291  				b := dAtA[iNdEx]
 10292  				iNdEx++
 10293  				stringLen |= uint64(b&0x7F) << shift
 10294  				if b < 0x80 {
 10295  					break
 10296  				}
 10297  			}
 10298  			intStringLen := int(stringLen)
 10299  			if intStringLen < 0 {
 10300  				return ErrInvalidLengthUnknonwnproto
 10301  			}
 10302  			postIndex := iNdEx + intStringLen
 10303  			if postIndex < 0 {
 10304  				return ErrInvalidLengthUnknonwnproto
 10305  			}
 10306  			if postIndex > l {
 10307  				return io.ErrUnexpectedEOF
 10308  			}
 10309  			m.Name = string(dAtA[iNdEx:postIndex])
 10310  			iNdEx = postIndex
 10311  		case 3:
 10312  			if wireType != 2 {
 10313  				return fmt.Errorf("proto: wrong wireType = %d for field Inner", wireType)
 10314  			}
 10315  			var msglen int
 10316  			for shift := uint(0); ; shift += 7 {
 10317  				if shift >= 64 {
 10318  					return ErrIntOverflowUnknonwnproto
 10319  				}
 10320  				if iNdEx >= l {
 10321  					return io.ErrUnexpectedEOF
 10322  				}
 10323  				b := dAtA[iNdEx]
 10324  				iNdEx++
 10325  				msglen |= int(b&0x7F) << shift
 10326  				if b < 0x80 {
 10327  					break
 10328  				}
 10329  			}
 10330  			if msglen < 0 {
 10331  				return ErrInvalidLengthUnknonwnproto
 10332  			}
 10333  			postIndex := iNdEx + msglen
 10334  			if postIndex < 0 {
 10335  				return ErrInvalidLengthUnknonwnproto
 10336  			}
 10337  			if postIndex > l {
 10338  				return io.ErrUnexpectedEOF
 10339  			}
 10340  			if m.Inner == nil {
 10341  				m.Inner = &TestVersion3LoneNesting_Inner1_InnerInner{}
 10342  			}
 10343  			if err := m.Inner.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10344  				return err
 10345  			}
 10346  			iNdEx = postIndex
 10347  		default:
 10348  			iNdEx = preIndex
 10349  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
 10350  			if err != nil {
 10351  				return err
 10352  			}
 10353  			if (skippy < 0) || (iNdEx+skippy) < 0 {
 10354  				return ErrInvalidLengthUnknonwnproto
 10355  			}
 10356  			if (iNdEx + skippy) > l {
 10357  				return io.ErrUnexpectedEOF
 10358  			}
 10359  			iNdEx += skippy
 10360  		}
 10361  	}
 10362  
 10363  	if iNdEx > l {
 10364  		return io.ErrUnexpectedEOF
 10365  	}
 10366  	return nil
 10367  }
 10368  func (m *TestVersion3LoneNesting_Inner1_InnerInner) Unmarshal(dAtA []byte) error {
 10369  	l := len(dAtA)
 10370  	iNdEx := 0
 10371  	for iNdEx < l {
 10372  		preIndex := iNdEx
 10373  		var wire uint64
 10374  		for shift := uint(0); ; shift += 7 {
 10375  			if shift >= 64 {
 10376  				return ErrIntOverflowUnknonwnproto
 10377  			}
 10378  			if iNdEx >= l {
 10379  				return io.ErrUnexpectedEOF
 10380  			}
 10381  			b := dAtA[iNdEx]
 10382  			iNdEx++
 10383  			wire |= uint64(b&0x7F) << shift
 10384  			if b < 0x80 {
 10385  				break
 10386  			}
 10387  		}
 10388  		fieldNum := int32(wire >> 3)
 10389  		wireType := int(wire & 0x7)
 10390  		if wireType == 4 {
 10391  			return fmt.Errorf("proto: InnerInner: wiretype end group for non-group")
 10392  		}
 10393  		if fieldNum <= 0 {
 10394  			return fmt.Errorf("proto: InnerInner: illegal tag %d (wire type %d)", fieldNum, wire)
 10395  		}
 10396  		switch fieldNum {
 10397  		case 1:
 10398  			if wireType != 2 {
 10399  				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
 10400  			}
 10401  			var stringLen uint64
 10402  			for shift := uint(0); ; shift += 7 {
 10403  				if shift >= 64 {
 10404  					return ErrIntOverflowUnknonwnproto
 10405  				}
 10406  				if iNdEx >= l {
 10407  					return io.ErrUnexpectedEOF
 10408  				}
 10409  				b := dAtA[iNdEx]
 10410  				iNdEx++
 10411  				stringLen |= uint64(b&0x7F) << shift
 10412  				if b < 0x80 {
 10413  					break
 10414  				}
 10415  			}
 10416  			intStringLen := int(stringLen)
 10417  			if intStringLen < 0 {
 10418  				return ErrInvalidLengthUnknonwnproto
 10419  			}
 10420  			postIndex := iNdEx + intStringLen
 10421  			if postIndex < 0 {
 10422  				return ErrInvalidLengthUnknonwnproto
 10423  			}
 10424  			if postIndex > l {
 10425  				return io.ErrUnexpectedEOF
 10426  			}
 10427  			m.Id = string(dAtA[iNdEx:postIndex])
 10428  			iNdEx = postIndex
 10429  		case 2:
 10430  			if wireType != 2 {
 10431  				return fmt.Errorf("proto: wrong wireType = %d for field City", wireType)
 10432  			}
 10433  			var stringLen uint64
 10434  			for shift := uint(0); ; shift += 7 {
 10435  				if shift >= 64 {
 10436  					return ErrIntOverflowUnknonwnproto
 10437  				}
 10438  				if iNdEx >= l {
 10439  					return io.ErrUnexpectedEOF
 10440  				}
 10441  				b := dAtA[iNdEx]
 10442  				iNdEx++
 10443  				stringLen |= uint64(b&0x7F) << shift
 10444  				if b < 0x80 {
 10445  					break
 10446  				}
 10447  			}
 10448  			intStringLen := int(stringLen)
 10449  			if intStringLen < 0 {
 10450  				return ErrInvalidLengthUnknonwnproto
 10451  			}
 10452  			postIndex := iNdEx + intStringLen
 10453  			if postIndex < 0 {
 10454  				return ErrInvalidLengthUnknonwnproto
 10455  			}
 10456  			if postIndex > l {
 10457  				return io.ErrUnexpectedEOF
 10458  			}
 10459  			m.City = string(dAtA[iNdEx:postIndex])
 10460  			iNdEx = postIndex
 10461  		default:
 10462  			iNdEx = preIndex
 10463  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
 10464  			if err != nil {
 10465  				return err
 10466  			}
 10467  			if (skippy < 0) || (iNdEx+skippy) < 0 {
 10468  				return ErrInvalidLengthUnknonwnproto
 10469  			}
 10470  			if (iNdEx + skippy) > l {
 10471  				return io.ErrUnexpectedEOF
 10472  			}
 10473  			iNdEx += skippy
 10474  		}
 10475  	}
 10476  
 10477  	if iNdEx > l {
 10478  		return io.ErrUnexpectedEOF
 10479  	}
 10480  	return nil
 10481  }
 10482  func (m *TestVersion3LoneNesting_Inner2) Unmarshal(dAtA []byte) error {
 10483  	l := len(dAtA)
 10484  	iNdEx := 0
 10485  	for iNdEx < l {
 10486  		preIndex := iNdEx
 10487  		var wire uint64
 10488  		for shift := uint(0); ; shift += 7 {
 10489  			if shift >= 64 {
 10490  				return ErrIntOverflowUnknonwnproto
 10491  			}
 10492  			if iNdEx >= l {
 10493  				return io.ErrUnexpectedEOF
 10494  			}
 10495  			b := dAtA[iNdEx]
 10496  			iNdEx++
 10497  			wire |= uint64(b&0x7F) << shift
 10498  			if b < 0x80 {
 10499  				break
 10500  			}
 10501  		}
 10502  		fieldNum := int32(wire >> 3)
 10503  		wireType := int(wire & 0x7)
 10504  		if wireType == 4 {
 10505  			return fmt.Errorf("proto: Inner2: wiretype end group for non-group")
 10506  		}
 10507  		if fieldNum <= 0 {
 10508  			return fmt.Errorf("proto: Inner2: illegal tag %d (wire type %d)", fieldNum, wire)
 10509  		}
 10510  		switch fieldNum {
 10511  		case 1:
 10512  			if wireType != 2 {
 10513  				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
 10514  			}
 10515  			var stringLen uint64
 10516  			for shift := uint(0); ; shift += 7 {
 10517  				if shift >= 64 {
 10518  					return ErrIntOverflowUnknonwnproto
 10519  				}
 10520  				if iNdEx >= l {
 10521  					return io.ErrUnexpectedEOF
 10522  				}
 10523  				b := dAtA[iNdEx]
 10524  				iNdEx++
 10525  				stringLen |= uint64(b&0x7F) << shift
 10526  				if b < 0x80 {
 10527  					break
 10528  				}
 10529  			}
 10530  			intStringLen := int(stringLen)
 10531  			if intStringLen < 0 {
 10532  				return ErrInvalidLengthUnknonwnproto
 10533  			}
 10534  			postIndex := iNdEx + intStringLen
 10535  			if postIndex < 0 {
 10536  				return ErrInvalidLengthUnknonwnproto
 10537  			}
 10538  			if postIndex > l {
 10539  				return io.ErrUnexpectedEOF
 10540  			}
 10541  			m.Id = string(dAtA[iNdEx:postIndex])
 10542  			iNdEx = postIndex
 10543  		case 2:
 10544  			if wireType != 2 {
 10545  				return fmt.Errorf("proto: wrong wireType = %d for field Country", wireType)
 10546  			}
 10547  			var stringLen uint64
 10548  			for shift := uint(0); ; shift += 7 {
 10549  				if shift >= 64 {
 10550  					return ErrIntOverflowUnknonwnproto
 10551  				}
 10552  				if iNdEx >= l {
 10553  					return io.ErrUnexpectedEOF
 10554  				}
 10555  				b := dAtA[iNdEx]
 10556  				iNdEx++
 10557  				stringLen |= uint64(b&0x7F) << shift
 10558  				if b < 0x80 {
 10559  					break
 10560  				}
 10561  			}
 10562  			intStringLen := int(stringLen)
 10563  			if intStringLen < 0 {
 10564  				return ErrInvalidLengthUnknonwnproto
 10565  			}
 10566  			postIndex := iNdEx + intStringLen
 10567  			if postIndex < 0 {
 10568  				return ErrInvalidLengthUnknonwnproto
 10569  			}
 10570  			if postIndex > l {
 10571  				return io.ErrUnexpectedEOF
 10572  			}
 10573  			m.Country = string(dAtA[iNdEx:postIndex])
 10574  			iNdEx = postIndex
 10575  		case 3:
 10576  			if wireType != 2 {
 10577  				return fmt.Errorf("proto: wrong wireType = %d for field Inner", wireType)
 10578  			}
 10579  			var msglen int
 10580  			for shift := uint(0); ; shift += 7 {
 10581  				if shift >= 64 {
 10582  					return ErrIntOverflowUnknonwnproto
 10583  				}
 10584  				if iNdEx >= l {
 10585  					return io.ErrUnexpectedEOF
 10586  				}
 10587  				b := dAtA[iNdEx]
 10588  				iNdEx++
 10589  				msglen |= int(b&0x7F) << shift
 10590  				if b < 0x80 {
 10591  					break
 10592  				}
 10593  			}
 10594  			if msglen < 0 {
 10595  				return ErrInvalidLengthUnknonwnproto
 10596  			}
 10597  			postIndex := iNdEx + msglen
 10598  			if postIndex < 0 {
 10599  				return ErrInvalidLengthUnknonwnproto
 10600  			}
 10601  			if postIndex > l {
 10602  				return io.ErrUnexpectedEOF
 10603  			}
 10604  			if m.Inner == nil {
 10605  				m.Inner = &TestVersion3LoneNesting_Inner2_InnerInner{}
 10606  			}
 10607  			if err := m.Inner.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10608  				return err
 10609  			}
 10610  			iNdEx = postIndex
 10611  		default:
 10612  			iNdEx = preIndex
 10613  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
 10614  			if err != nil {
 10615  				return err
 10616  			}
 10617  			if (skippy < 0) || (iNdEx+skippy) < 0 {
 10618  				return ErrInvalidLengthUnknonwnproto
 10619  			}
 10620  			if (iNdEx + skippy) > l {
 10621  				return io.ErrUnexpectedEOF
 10622  			}
 10623  			iNdEx += skippy
 10624  		}
 10625  	}
 10626  
 10627  	if iNdEx > l {
 10628  		return io.ErrUnexpectedEOF
 10629  	}
 10630  	return nil
 10631  }
 10632  func (m *TestVersion3LoneNesting_Inner2_InnerInner) Unmarshal(dAtA []byte) error {
 10633  	l := len(dAtA)
 10634  	iNdEx := 0
 10635  	for iNdEx < l {
 10636  		preIndex := iNdEx
 10637  		var wire uint64
 10638  		for shift := uint(0); ; shift += 7 {
 10639  			if shift >= 64 {
 10640  				return ErrIntOverflowUnknonwnproto
 10641  			}
 10642  			if iNdEx >= l {
 10643  				return io.ErrUnexpectedEOF
 10644  			}
 10645  			b := dAtA[iNdEx]
 10646  			iNdEx++
 10647  			wire |= uint64(b&0x7F) << shift
 10648  			if b < 0x80 {
 10649  				break
 10650  			}
 10651  		}
 10652  		fieldNum := int32(wire >> 3)
 10653  		wireType := int(wire & 0x7)
 10654  		if wireType == 4 {
 10655  			return fmt.Errorf("proto: InnerInner: wiretype end group for non-group")
 10656  		}
 10657  		if fieldNum <= 0 {
 10658  			return fmt.Errorf("proto: InnerInner: illegal tag %d (wire type %d)", fieldNum, wire)
 10659  		}
 10660  		switch fieldNum {
 10661  		case 1:
 10662  			if wireType != 2 {
 10663  				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
 10664  			}
 10665  			var stringLen uint64
 10666  			for shift := uint(0); ; shift += 7 {
 10667  				if shift >= 64 {
 10668  					return ErrIntOverflowUnknonwnproto
 10669  				}
 10670  				if iNdEx >= l {
 10671  					return io.ErrUnexpectedEOF
 10672  				}
 10673  				b := dAtA[iNdEx]
 10674  				iNdEx++
 10675  				stringLen |= uint64(b&0x7F) << shift
 10676  				if b < 0x80 {
 10677  					break
 10678  				}
 10679  			}
 10680  			intStringLen := int(stringLen)
 10681  			if intStringLen < 0 {
 10682  				return ErrInvalidLengthUnknonwnproto
 10683  			}
 10684  			postIndex := iNdEx + intStringLen
 10685  			if postIndex < 0 {
 10686  				return ErrInvalidLengthUnknonwnproto
 10687  			}
 10688  			if postIndex > l {
 10689  				return io.ErrUnexpectedEOF
 10690  			}
 10691  			m.Id = string(dAtA[iNdEx:postIndex])
 10692  			iNdEx = postIndex
 10693  		case 2:
 10694  			if wireType != 2 {
 10695  				return fmt.Errorf("proto: wrong wireType = %d for field City", wireType)
 10696  			}
 10697  			var stringLen uint64
 10698  			for shift := uint(0); ; shift += 7 {
 10699  				if shift >= 64 {
 10700  					return ErrIntOverflowUnknonwnproto
 10701  				}
 10702  				if iNdEx >= l {
 10703  					return io.ErrUnexpectedEOF
 10704  				}
 10705  				b := dAtA[iNdEx]
 10706  				iNdEx++
 10707  				stringLen |= uint64(b&0x7F) << shift
 10708  				if b < 0x80 {
 10709  					break
 10710  				}
 10711  			}
 10712  			intStringLen := int(stringLen)
 10713  			if intStringLen < 0 {
 10714  				return ErrInvalidLengthUnknonwnproto
 10715  			}
 10716  			postIndex := iNdEx + intStringLen
 10717  			if postIndex < 0 {
 10718  				return ErrInvalidLengthUnknonwnproto
 10719  			}
 10720  			if postIndex > l {
 10721  				return io.ErrUnexpectedEOF
 10722  			}
 10723  			m.City = string(dAtA[iNdEx:postIndex])
 10724  			iNdEx = postIndex
 10725  		default:
 10726  			iNdEx = preIndex
 10727  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
 10728  			if err != nil {
 10729  				return err
 10730  			}
 10731  			if (skippy < 0) || (iNdEx+skippy) < 0 {
 10732  				return ErrInvalidLengthUnknonwnproto
 10733  			}
 10734  			if (iNdEx + skippy) > l {
 10735  				return io.ErrUnexpectedEOF
 10736  			}
 10737  			iNdEx += skippy
 10738  		}
 10739  	}
 10740  
 10741  	if iNdEx > l {
 10742  		return io.ErrUnexpectedEOF
 10743  	}
 10744  	return nil
 10745  }
 10746  func (m *TestVersion4LoneNesting) Unmarshal(dAtA []byte) error {
 10747  	l := len(dAtA)
 10748  	iNdEx := 0
 10749  	for iNdEx < l {
 10750  		preIndex := iNdEx
 10751  		var wire uint64
 10752  		for shift := uint(0); ; shift += 7 {
 10753  			if shift >= 64 {
 10754  				return ErrIntOverflowUnknonwnproto
 10755  			}
 10756  			if iNdEx >= l {
 10757  				return io.ErrUnexpectedEOF
 10758  			}
 10759  			b := dAtA[iNdEx]
 10760  			iNdEx++
 10761  			wire |= uint64(b&0x7F) << shift
 10762  			if b < 0x80 {
 10763  				break
 10764  			}
 10765  		}
 10766  		fieldNum := int32(wire >> 3)
 10767  		wireType := int(wire & 0x7)
 10768  		if wireType == 4 {
 10769  			return fmt.Errorf("proto: TestVersion4LoneNesting: wiretype end group for non-group")
 10770  		}
 10771  		if fieldNum <= 0 {
 10772  			return fmt.Errorf("proto: TestVersion4LoneNesting: illegal tag %d (wire type %d)", fieldNum, wire)
 10773  		}
 10774  		switch fieldNum {
 10775  		case 1:
 10776  			if wireType != 0 {
 10777  				return fmt.Errorf("proto: wrong wireType = %d for field X", wireType)
 10778  			}
 10779  			m.X = 0
 10780  			for shift := uint(0); ; shift += 7 {
 10781  				if shift >= 64 {
 10782  					return ErrIntOverflowUnknonwnproto
 10783  				}
 10784  				if iNdEx >= l {
 10785  					return io.ErrUnexpectedEOF
 10786  				}
 10787  				b := dAtA[iNdEx]
 10788  				iNdEx++
 10789  				m.X |= int64(b&0x7F) << shift
 10790  				if b < 0x80 {
 10791  					break
 10792  				}
 10793  			}
 10794  		case 2:
 10795  			if wireType != 2 {
 10796  				return fmt.Errorf("proto: wrong wireType = %d for field A", wireType)
 10797  			}
 10798  			var msglen int
 10799  			for shift := uint(0); ; shift += 7 {
 10800  				if shift >= 64 {
 10801  					return ErrIntOverflowUnknonwnproto
 10802  				}
 10803  				if iNdEx >= l {
 10804  					return io.ErrUnexpectedEOF
 10805  				}
 10806  				b := dAtA[iNdEx]
 10807  				iNdEx++
 10808  				msglen |= int(b&0x7F) << shift
 10809  				if b < 0x80 {
 10810  					break
 10811  				}
 10812  			}
 10813  			if msglen < 0 {
 10814  				return ErrInvalidLengthUnknonwnproto
 10815  			}
 10816  			postIndex := iNdEx + msglen
 10817  			if postIndex < 0 {
 10818  				return ErrInvalidLengthUnknonwnproto
 10819  			}
 10820  			if postIndex > l {
 10821  				return io.ErrUnexpectedEOF
 10822  			}
 10823  			if m.A == nil {
 10824  				m.A = &TestVersion3{}
 10825  			}
 10826  			if err := m.A.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10827  				return err
 10828  			}
 10829  			iNdEx = postIndex
 10830  		case 3:
 10831  			if wireType != 2 {
 10832  				return fmt.Errorf("proto: wrong wireType = %d for field B", wireType)
 10833  			}
 10834  			var msglen int
 10835  			for shift := uint(0); ; shift += 7 {
 10836  				if shift >= 64 {
 10837  					return ErrIntOverflowUnknonwnproto
 10838  				}
 10839  				if iNdEx >= l {
 10840  					return io.ErrUnexpectedEOF
 10841  				}
 10842  				b := dAtA[iNdEx]
 10843  				iNdEx++
 10844  				msglen |= int(b&0x7F) << shift
 10845  				if b < 0x80 {
 10846  					break
 10847  				}
 10848  			}
 10849  			if msglen < 0 {
 10850  				return ErrInvalidLengthUnknonwnproto
 10851  			}
 10852  			postIndex := iNdEx + msglen
 10853  			if postIndex < 0 {
 10854  				return ErrInvalidLengthUnknonwnproto
 10855  			}
 10856  			if postIndex > l {
 10857  				return io.ErrUnexpectedEOF
 10858  			}
 10859  			if m.B == nil {
 10860  				m.B = &TestVersion3{}
 10861  			}
 10862  			if err := m.B.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10863  				return err
 10864  			}
 10865  			iNdEx = postIndex
 10866  		case 4:
 10867  			if wireType != 2 {
 10868  				return fmt.Errorf("proto: wrong wireType = %d for field C", wireType)
 10869  			}
 10870  			var msglen int
 10871  			for shift := uint(0); ; shift += 7 {
 10872  				if shift >= 64 {
 10873  					return ErrIntOverflowUnknonwnproto
 10874  				}
 10875  				if iNdEx >= l {
 10876  					return io.ErrUnexpectedEOF
 10877  				}
 10878  				b := dAtA[iNdEx]
 10879  				iNdEx++
 10880  				msglen |= int(b&0x7F) << shift
 10881  				if b < 0x80 {
 10882  					break
 10883  				}
 10884  			}
 10885  			if msglen < 0 {
 10886  				return ErrInvalidLengthUnknonwnproto
 10887  			}
 10888  			postIndex := iNdEx + msglen
 10889  			if postIndex < 0 {
 10890  				return ErrInvalidLengthUnknonwnproto
 10891  			}
 10892  			if postIndex > l {
 10893  				return io.ErrUnexpectedEOF
 10894  			}
 10895  			m.C = append(m.C, &TestVersion3{})
 10896  			if err := m.C[len(m.C)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10897  				return err
 10898  			}
 10899  			iNdEx = postIndex
 10900  		case 5:
 10901  			if wireType != 2 {
 10902  				return fmt.Errorf("proto: wrong wireType = %d for field D", wireType)
 10903  			}
 10904  			var msglen int
 10905  			for shift := uint(0); ; shift += 7 {
 10906  				if shift >= 64 {
 10907  					return ErrIntOverflowUnknonwnproto
 10908  				}
 10909  				if iNdEx >= l {
 10910  					return io.ErrUnexpectedEOF
 10911  				}
 10912  				b := dAtA[iNdEx]
 10913  				iNdEx++
 10914  				msglen |= int(b&0x7F) << shift
 10915  				if b < 0x80 {
 10916  					break
 10917  				}
 10918  			}
 10919  			if msglen < 0 {
 10920  				return ErrInvalidLengthUnknonwnproto
 10921  			}
 10922  			postIndex := iNdEx + msglen
 10923  			if postIndex < 0 {
 10924  				return ErrInvalidLengthUnknonwnproto
 10925  			}
 10926  			if postIndex > l {
 10927  				return io.ErrUnexpectedEOF
 10928  			}
 10929  			m.D = append(m.D, &TestVersion3{})
 10930  			if err := m.D[len(m.D)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10931  				return err
 10932  			}
 10933  			iNdEx = postIndex
 10934  		case 7:
 10935  			if wireType != 2 {
 10936  				return fmt.Errorf("proto: wrong wireType = %d for field F", wireType)
 10937  			}
 10938  			var msglen int
 10939  			for shift := uint(0); ; shift += 7 {
 10940  				if shift >= 64 {
 10941  					return ErrIntOverflowUnknonwnproto
 10942  				}
 10943  				if iNdEx >= l {
 10944  					return io.ErrUnexpectedEOF
 10945  				}
 10946  				b := dAtA[iNdEx]
 10947  				iNdEx++
 10948  				msglen |= int(b&0x7F) << shift
 10949  				if b < 0x80 {
 10950  					break
 10951  				}
 10952  			}
 10953  			if msglen < 0 {
 10954  				return ErrInvalidLengthUnknonwnproto
 10955  			}
 10956  			postIndex := iNdEx + msglen
 10957  			if postIndex < 0 {
 10958  				return ErrInvalidLengthUnknonwnproto
 10959  			}
 10960  			if postIndex > l {
 10961  				return io.ErrUnexpectedEOF
 10962  			}
 10963  			v := &TestVersion3LoneNesting{}
 10964  			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10965  				return err
 10966  			}
 10967  			m.Sum = &TestVersion4LoneNesting_F{v}
 10968  			iNdEx = postIndex
 10969  		case 8:
 10970  			if wireType != 2 {
 10971  				return fmt.Errorf("proto: wrong wireType = %d for field G", wireType)
 10972  			}
 10973  			var msglen int
 10974  			for shift := uint(0); ; shift += 7 {
 10975  				if shift >= 64 {
 10976  					return ErrIntOverflowUnknonwnproto
 10977  				}
 10978  				if iNdEx >= l {
 10979  					return io.ErrUnexpectedEOF
 10980  				}
 10981  				b := dAtA[iNdEx]
 10982  				iNdEx++
 10983  				msglen |= int(b&0x7F) << shift
 10984  				if b < 0x80 {
 10985  					break
 10986  				}
 10987  			}
 10988  			if msglen < 0 {
 10989  				return ErrInvalidLengthUnknonwnproto
 10990  			}
 10991  			postIndex := iNdEx + msglen
 10992  			if postIndex < 0 {
 10993  				return ErrInvalidLengthUnknonwnproto
 10994  			}
 10995  			if postIndex > l {
 10996  				return io.ErrUnexpectedEOF
 10997  			}
 10998  			if m.G == nil {
 10999  				m.G = &types.Any{}
 11000  			}
 11001  			if err := m.G.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11002  				return err
 11003  			}
 11004  			iNdEx = postIndex
 11005  		case 9:
 11006  			if wireType != 2 {
 11007  				return fmt.Errorf("proto: wrong wireType = %d for field H", wireType)
 11008  			}
 11009  			var msglen int
 11010  			for shift := uint(0); ; shift += 7 {
 11011  				if shift >= 64 {
 11012  					return ErrIntOverflowUnknonwnproto
 11013  				}
 11014  				if iNdEx >= l {
 11015  					return io.ErrUnexpectedEOF
 11016  				}
 11017  				b := dAtA[iNdEx]
 11018  				iNdEx++
 11019  				msglen |= int(b&0x7F) << shift
 11020  				if b < 0x80 {
 11021  					break
 11022  				}
 11023  			}
 11024  			if msglen < 0 {
 11025  				return ErrInvalidLengthUnknonwnproto
 11026  			}
 11027  			postIndex := iNdEx + msglen
 11028  			if postIndex < 0 {
 11029  				return ErrInvalidLengthUnknonwnproto
 11030  			}
 11031  			if postIndex > l {
 11032  				return io.ErrUnexpectedEOF
 11033  			}
 11034  			m.H = append(m.H, &TestVersion1{})
 11035  			if err := m.H[len(m.H)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11036  				return err
 11037  			}
 11038  			iNdEx = postIndex
 11039  		case 12:
 11040  			if wireType != 2 {
 11041  				return fmt.Errorf("proto: wrong wireType = %d for field Customer1", wireType)
 11042  			}
 11043  			var msglen int
 11044  			for shift := uint(0); ; shift += 7 {
 11045  				if shift >= 64 {
 11046  					return ErrIntOverflowUnknonwnproto
 11047  				}
 11048  				if iNdEx >= l {
 11049  					return io.ErrUnexpectedEOF
 11050  				}
 11051  				b := dAtA[iNdEx]
 11052  				iNdEx++
 11053  				msglen |= int(b&0x7F) << shift
 11054  				if b < 0x80 {
 11055  					break
 11056  				}
 11057  			}
 11058  			if msglen < 0 {
 11059  				return ErrInvalidLengthUnknonwnproto
 11060  			}
 11061  			postIndex := iNdEx + msglen
 11062  			if postIndex < 0 {
 11063  				return ErrInvalidLengthUnknonwnproto
 11064  			}
 11065  			if postIndex > l {
 11066  				return io.ErrUnexpectedEOF
 11067  			}
 11068  			if m.Customer1 == nil {
 11069  				m.Customer1 = &Customer1{}
 11070  			}
 11071  			if err := m.Customer1.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11072  				return err
 11073  			}
 11074  			iNdEx = postIndex
 11075  		case 14:
 11076  			if wireType != 2 {
 11077  				return fmt.Errorf("proto: wrong wireType = %d for field Inner1", wireType)
 11078  			}
 11079  			var msglen int
 11080  			for shift := uint(0); ; shift += 7 {
 11081  				if shift >= 64 {
 11082  					return ErrIntOverflowUnknonwnproto
 11083  				}
 11084  				if iNdEx >= l {
 11085  					return io.ErrUnexpectedEOF
 11086  				}
 11087  				b := dAtA[iNdEx]
 11088  				iNdEx++
 11089  				msglen |= int(b&0x7F) << shift
 11090  				if b < 0x80 {
 11091  					break
 11092  				}
 11093  			}
 11094  			if msglen < 0 {
 11095  				return ErrInvalidLengthUnknonwnproto
 11096  			}
 11097  			postIndex := iNdEx + msglen
 11098  			if postIndex < 0 {
 11099  				return ErrInvalidLengthUnknonwnproto
 11100  			}
 11101  			if postIndex > l {
 11102  				return io.ErrUnexpectedEOF
 11103  			}
 11104  			if m.Inner1 == nil {
 11105  				m.Inner1 = &TestVersion4LoneNesting_Inner1{}
 11106  			}
 11107  			if err := m.Inner1.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11108  				return err
 11109  			}
 11110  			iNdEx = postIndex
 11111  		case 15:
 11112  			if wireType != 2 {
 11113  				return fmt.Errorf("proto: wrong wireType = %d for field Inner2", wireType)
 11114  			}
 11115  			var msglen int
 11116  			for shift := uint(0); ; shift += 7 {
 11117  				if shift >= 64 {
 11118  					return ErrIntOverflowUnknonwnproto
 11119  				}
 11120  				if iNdEx >= l {
 11121  					return io.ErrUnexpectedEOF
 11122  				}
 11123  				b := dAtA[iNdEx]
 11124  				iNdEx++
 11125  				msglen |= int(b&0x7F) << shift
 11126  				if b < 0x80 {
 11127  					break
 11128  				}
 11129  			}
 11130  			if msglen < 0 {
 11131  				return ErrInvalidLengthUnknonwnproto
 11132  			}
 11133  			postIndex := iNdEx + msglen
 11134  			if postIndex < 0 {
 11135  				return ErrInvalidLengthUnknonwnproto
 11136  			}
 11137  			if postIndex > l {
 11138  				return io.ErrUnexpectedEOF
 11139  			}
 11140  			if m.Inner2 == nil {
 11141  				m.Inner2 = &TestVersion4LoneNesting_Inner2{}
 11142  			}
 11143  			if err := m.Inner2.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11144  				return err
 11145  			}
 11146  			iNdEx = postIndex
 11147  		case 1031:
 11148  			if wireType != 2 {
 11149  				return fmt.Errorf("proto: wrong wireType = %d for field NonCriticalField", wireType)
 11150  			}
 11151  			var stringLen uint64
 11152  			for shift := uint(0); ; shift += 7 {
 11153  				if shift >= 64 {
 11154  					return ErrIntOverflowUnknonwnproto
 11155  				}
 11156  				if iNdEx >= l {
 11157  					return io.ErrUnexpectedEOF
 11158  				}
 11159  				b := dAtA[iNdEx]
 11160  				iNdEx++
 11161  				stringLen |= uint64(b&0x7F) << shift
 11162  				if b < 0x80 {
 11163  					break
 11164  				}
 11165  			}
 11166  			intStringLen := int(stringLen)
 11167  			if intStringLen < 0 {
 11168  				return ErrInvalidLengthUnknonwnproto
 11169  			}
 11170  			postIndex := iNdEx + intStringLen
 11171  			if postIndex < 0 {
 11172  				return ErrInvalidLengthUnknonwnproto
 11173  			}
 11174  			if postIndex > l {
 11175  				return io.ErrUnexpectedEOF
 11176  			}
 11177  			m.NonCriticalField = string(dAtA[iNdEx:postIndex])
 11178  			iNdEx = postIndex
 11179  		default:
 11180  			iNdEx = preIndex
 11181  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
 11182  			if err != nil {
 11183  				return err
 11184  			}
 11185  			if (skippy < 0) || (iNdEx+skippy) < 0 {
 11186  				return ErrInvalidLengthUnknonwnproto
 11187  			}
 11188  			if (iNdEx + skippy) > l {
 11189  				return io.ErrUnexpectedEOF
 11190  			}
 11191  			iNdEx += skippy
 11192  		}
 11193  	}
 11194  
 11195  	if iNdEx > l {
 11196  		return io.ErrUnexpectedEOF
 11197  	}
 11198  	return nil
 11199  }
 11200  func (m *TestVersion4LoneNesting_Inner1) Unmarshal(dAtA []byte) error {
 11201  	l := len(dAtA)
 11202  	iNdEx := 0
 11203  	for iNdEx < l {
 11204  		preIndex := iNdEx
 11205  		var wire uint64
 11206  		for shift := uint(0); ; shift += 7 {
 11207  			if shift >= 64 {
 11208  				return ErrIntOverflowUnknonwnproto
 11209  			}
 11210  			if iNdEx >= l {
 11211  				return io.ErrUnexpectedEOF
 11212  			}
 11213  			b := dAtA[iNdEx]
 11214  			iNdEx++
 11215  			wire |= uint64(b&0x7F) << shift
 11216  			if b < 0x80 {
 11217  				break
 11218  			}
 11219  		}
 11220  		fieldNum := int32(wire >> 3)
 11221  		wireType := int(wire & 0x7)
 11222  		if wireType == 4 {
 11223  			return fmt.Errorf("proto: Inner1: wiretype end group for non-group")
 11224  		}
 11225  		if fieldNum <= 0 {
 11226  			return fmt.Errorf("proto: Inner1: illegal tag %d (wire type %d)", fieldNum, wire)
 11227  		}
 11228  		switch fieldNum {
 11229  		case 1:
 11230  			if wireType != 0 {
 11231  				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
 11232  			}
 11233  			m.Id = 0
 11234  			for shift := uint(0); ; shift += 7 {
 11235  				if shift >= 64 {
 11236  					return ErrIntOverflowUnknonwnproto
 11237  				}
 11238  				if iNdEx >= l {
 11239  					return io.ErrUnexpectedEOF
 11240  				}
 11241  				b := dAtA[iNdEx]
 11242  				iNdEx++
 11243  				m.Id |= int64(b&0x7F) << shift
 11244  				if b < 0x80 {
 11245  					break
 11246  				}
 11247  			}
 11248  		case 2:
 11249  			if wireType != 2 {
 11250  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
 11251  			}
 11252  			var stringLen uint64
 11253  			for shift := uint(0); ; shift += 7 {
 11254  				if shift >= 64 {
 11255  					return ErrIntOverflowUnknonwnproto
 11256  				}
 11257  				if iNdEx >= l {
 11258  					return io.ErrUnexpectedEOF
 11259  				}
 11260  				b := dAtA[iNdEx]
 11261  				iNdEx++
 11262  				stringLen |= uint64(b&0x7F) << shift
 11263  				if b < 0x80 {
 11264  					break
 11265  				}
 11266  			}
 11267  			intStringLen := int(stringLen)
 11268  			if intStringLen < 0 {
 11269  				return ErrInvalidLengthUnknonwnproto
 11270  			}
 11271  			postIndex := iNdEx + intStringLen
 11272  			if postIndex < 0 {
 11273  				return ErrInvalidLengthUnknonwnproto
 11274  			}
 11275  			if postIndex > l {
 11276  				return io.ErrUnexpectedEOF
 11277  			}
 11278  			m.Name = string(dAtA[iNdEx:postIndex])
 11279  			iNdEx = postIndex
 11280  		case 3:
 11281  			if wireType != 2 {
 11282  				return fmt.Errorf("proto: wrong wireType = %d for field Inner", wireType)
 11283  			}
 11284  			var msglen int
 11285  			for shift := uint(0); ; shift += 7 {
 11286  				if shift >= 64 {
 11287  					return ErrIntOverflowUnknonwnproto
 11288  				}
 11289  				if iNdEx >= l {
 11290  					return io.ErrUnexpectedEOF
 11291  				}
 11292  				b := dAtA[iNdEx]
 11293  				iNdEx++
 11294  				msglen |= int(b&0x7F) << shift
 11295  				if b < 0x80 {
 11296  					break
 11297  				}
 11298  			}
 11299  			if msglen < 0 {
 11300  				return ErrInvalidLengthUnknonwnproto
 11301  			}
 11302  			postIndex := iNdEx + msglen
 11303  			if postIndex < 0 {
 11304  				return ErrInvalidLengthUnknonwnproto
 11305  			}
 11306  			if postIndex > l {
 11307  				return io.ErrUnexpectedEOF
 11308  			}
 11309  			if m.Inner == nil {
 11310  				m.Inner = &TestVersion4LoneNesting_Inner1_InnerInner{}
 11311  			}
 11312  			if err := m.Inner.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11313  				return err
 11314  			}
 11315  			iNdEx = postIndex
 11316  		default:
 11317  			iNdEx = preIndex
 11318  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
 11319  			if err != nil {
 11320  				return err
 11321  			}
 11322  			if (skippy < 0) || (iNdEx+skippy) < 0 {
 11323  				return ErrInvalidLengthUnknonwnproto
 11324  			}
 11325  			if (iNdEx + skippy) > l {
 11326  				return io.ErrUnexpectedEOF
 11327  			}
 11328  			iNdEx += skippy
 11329  		}
 11330  	}
 11331  
 11332  	if iNdEx > l {
 11333  		return io.ErrUnexpectedEOF
 11334  	}
 11335  	return nil
 11336  }
 11337  func (m *TestVersion4LoneNesting_Inner1_InnerInner) Unmarshal(dAtA []byte) error {
 11338  	l := len(dAtA)
 11339  	iNdEx := 0
 11340  	for iNdEx < l {
 11341  		preIndex := iNdEx
 11342  		var wire uint64
 11343  		for shift := uint(0); ; shift += 7 {
 11344  			if shift >= 64 {
 11345  				return ErrIntOverflowUnknonwnproto
 11346  			}
 11347  			if iNdEx >= l {
 11348  				return io.ErrUnexpectedEOF
 11349  			}
 11350  			b := dAtA[iNdEx]
 11351  			iNdEx++
 11352  			wire |= uint64(b&0x7F) << shift
 11353  			if b < 0x80 {
 11354  				break
 11355  			}
 11356  		}
 11357  		fieldNum := int32(wire >> 3)
 11358  		wireType := int(wire & 0x7)
 11359  		if wireType == 4 {
 11360  			return fmt.Errorf("proto: InnerInner: wiretype end group for non-group")
 11361  		}
 11362  		if fieldNum <= 0 {
 11363  			return fmt.Errorf("proto: InnerInner: illegal tag %d (wire type %d)", fieldNum, wire)
 11364  		}
 11365  		switch fieldNum {
 11366  		case 1:
 11367  			if wireType != 0 {
 11368  				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
 11369  			}
 11370  			m.Id = 0
 11371  			for shift := uint(0); ; shift += 7 {
 11372  				if shift >= 64 {
 11373  					return ErrIntOverflowUnknonwnproto
 11374  				}
 11375  				if iNdEx >= l {
 11376  					return io.ErrUnexpectedEOF
 11377  				}
 11378  				b := dAtA[iNdEx]
 11379  				iNdEx++
 11380  				m.Id |= int64(b&0x7F) << shift
 11381  				if b < 0x80 {
 11382  					break
 11383  				}
 11384  			}
 11385  		case 2:
 11386  			if wireType != 2 {
 11387  				return fmt.Errorf("proto: wrong wireType = %d for field City", wireType)
 11388  			}
 11389  			var stringLen uint64
 11390  			for shift := uint(0); ; shift += 7 {
 11391  				if shift >= 64 {
 11392  					return ErrIntOverflowUnknonwnproto
 11393  				}
 11394  				if iNdEx >= l {
 11395  					return io.ErrUnexpectedEOF
 11396  				}
 11397  				b := dAtA[iNdEx]
 11398  				iNdEx++
 11399  				stringLen |= uint64(b&0x7F) << shift
 11400  				if b < 0x80 {
 11401  					break
 11402  				}
 11403  			}
 11404  			intStringLen := int(stringLen)
 11405  			if intStringLen < 0 {
 11406  				return ErrInvalidLengthUnknonwnproto
 11407  			}
 11408  			postIndex := iNdEx + intStringLen
 11409  			if postIndex < 0 {
 11410  				return ErrInvalidLengthUnknonwnproto
 11411  			}
 11412  			if postIndex > l {
 11413  				return io.ErrUnexpectedEOF
 11414  			}
 11415  			m.City = string(dAtA[iNdEx:postIndex])
 11416  			iNdEx = postIndex
 11417  		default:
 11418  			iNdEx = preIndex
 11419  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
 11420  			if err != nil {
 11421  				return err
 11422  			}
 11423  			if (skippy < 0) || (iNdEx+skippy) < 0 {
 11424  				return ErrInvalidLengthUnknonwnproto
 11425  			}
 11426  			if (iNdEx + skippy) > l {
 11427  				return io.ErrUnexpectedEOF
 11428  			}
 11429  			iNdEx += skippy
 11430  		}
 11431  	}
 11432  
 11433  	if iNdEx > l {
 11434  		return io.ErrUnexpectedEOF
 11435  	}
 11436  	return nil
 11437  }
 11438  func (m *TestVersion4LoneNesting_Inner2) Unmarshal(dAtA []byte) error {
 11439  	l := len(dAtA)
 11440  	iNdEx := 0
 11441  	for iNdEx < l {
 11442  		preIndex := iNdEx
 11443  		var wire uint64
 11444  		for shift := uint(0); ; shift += 7 {
 11445  			if shift >= 64 {
 11446  				return ErrIntOverflowUnknonwnproto
 11447  			}
 11448  			if iNdEx >= l {
 11449  				return io.ErrUnexpectedEOF
 11450  			}
 11451  			b := dAtA[iNdEx]
 11452  			iNdEx++
 11453  			wire |= uint64(b&0x7F) << shift
 11454  			if b < 0x80 {
 11455  				break
 11456  			}
 11457  		}
 11458  		fieldNum := int32(wire >> 3)
 11459  		wireType := int(wire & 0x7)
 11460  		if wireType == 4 {
 11461  			return fmt.Errorf("proto: Inner2: wiretype end group for non-group")
 11462  		}
 11463  		if fieldNum <= 0 {
 11464  			return fmt.Errorf("proto: Inner2: illegal tag %d (wire type %d)", fieldNum, wire)
 11465  		}
 11466  		switch fieldNum {
 11467  		case 1:
 11468  			if wireType != 2 {
 11469  				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
 11470  			}
 11471  			var stringLen uint64
 11472  			for shift := uint(0); ; shift += 7 {
 11473  				if shift >= 64 {
 11474  					return ErrIntOverflowUnknonwnproto
 11475  				}
 11476  				if iNdEx >= l {
 11477  					return io.ErrUnexpectedEOF
 11478  				}
 11479  				b := dAtA[iNdEx]
 11480  				iNdEx++
 11481  				stringLen |= uint64(b&0x7F) << shift
 11482  				if b < 0x80 {
 11483  					break
 11484  				}
 11485  			}
 11486  			intStringLen := int(stringLen)
 11487  			if intStringLen < 0 {
 11488  				return ErrInvalidLengthUnknonwnproto
 11489  			}
 11490  			postIndex := iNdEx + intStringLen
 11491  			if postIndex < 0 {
 11492  				return ErrInvalidLengthUnknonwnproto
 11493  			}
 11494  			if postIndex > l {
 11495  				return io.ErrUnexpectedEOF
 11496  			}
 11497  			m.Id = string(dAtA[iNdEx:postIndex])
 11498  			iNdEx = postIndex
 11499  		case 2:
 11500  			if wireType != 2 {
 11501  				return fmt.Errorf("proto: wrong wireType = %d for field Country", wireType)
 11502  			}
 11503  			var stringLen uint64
 11504  			for shift := uint(0); ; shift += 7 {
 11505  				if shift >= 64 {
 11506  					return ErrIntOverflowUnknonwnproto
 11507  				}
 11508  				if iNdEx >= l {
 11509  					return io.ErrUnexpectedEOF
 11510  				}
 11511  				b := dAtA[iNdEx]
 11512  				iNdEx++
 11513  				stringLen |= uint64(b&0x7F) << shift
 11514  				if b < 0x80 {
 11515  					break
 11516  				}
 11517  			}
 11518  			intStringLen := int(stringLen)
 11519  			if intStringLen < 0 {
 11520  				return ErrInvalidLengthUnknonwnproto
 11521  			}
 11522  			postIndex := iNdEx + intStringLen
 11523  			if postIndex < 0 {
 11524  				return ErrInvalidLengthUnknonwnproto
 11525  			}
 11526  			if postIndex > l {
 11527  				return io.ErrUnexpectedEOF
 11528  			}
 11529  			m.Country = string(dAtA[iNdEx:postIndex])
 11530  			iNdEx = postIndex
 11531  		case 3:
 11532  			if wireType != 2 {
 11533  				return fmt.Errorf("proto: wrong wireType = %d for field Inner", wireType)
 11534  			}
 11535  			var msglen int
 11536  			for shift := uint(0); ; shift += 7 {
 11537  				if shift >= 64 {
 11538  					return ErrIntOverflowUnknonwnproto
 11539  				}
 11540  				if iNdEx >= l {
 11541  					return io.ErrUnexpectedEOF
 11542  				}
 11543  				b := dAtA[iNdEx]
 11544  				iNdEx++
 11545  				msglen |= int(b&0x7F) << shift
 11546  				if b < 0x80 {
 11547  					break
 11548  				}
 11549  			}
 11550  			if msglen < 0 {
 11551  				return ErrInvalidLengthUnknonwnproto
 11552  			}
 11553  			postIndex := iNdEx + msglen
 11554  			if postIndex < 0 {
 11555  				return ErrInvalidLengthUnknonwnproto
 11556  			}
 11557  			if postIndex > l {
 11558  				return io.ErrUnexpectedEOF
 11559  			}
 11560  			if m.Inner == nil {
 11561  				m.Inner = &TestVersion4LoneNesting_Inner2_InnerInner{}
 11562  			}
 11563  			if err := m.Inner.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11564  				return err
 11565  			}
 11566  			iNdEx = postIndex
 11567  		default:
 11568  			iNdEx = preIndex
 11569  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
 11570  			if err != nil {
 11571  				return err
 11572  			}
 11573  			if (skippy < 0) || (iNdEx+skippy) < 0 {
 11574  				return ErrInvalidLengthUnknonwnproto
 11575  			}
 11576  			if (iNdEx + skippy) > l {
 11577  				return io.ErrUnexpectedEOF
 11578  			}
 11579  			iNdEx += skippy
 11580  		}
 11581  	}
 11582  
 11583  	if iNdEx > l {
 11584  		return io.ErrUnexpectedEOF
 11585  	}
 11586  	return nil
 11587  }
 11588  func (m *TestVersion4LoneNesting_Inner2_InnerInner) Unmarshal(dAtA []byte) error {
 11589  	l := len(dAtA)
 11590  	iNdEx := 0
 11591  	for iNdEx < l {
 11592  		preIndex := iNdEx
 11593  		var wire uint64
 11594  		for shift := uint(0); ; shift += 7 {
 11595  			if shift >= 64 {
 11596  				return ErrIntOverflowUnknonwnproto
 11597  			}
 11598  			if iNdEx >= l {
 11599  				return io.ErrUnexpectedEOF
 11600  			}
 11601  			b := dAtA[iNdEx]
 11602  			iNdEx++
 11603  			wire |= uint64(b&0x7F) << shift
 11604  			if b < 0x80 {
 11605  				break
 11606  			}
 11607  		}
 11608  		fieldNum := int32(wire >> 3)
 11609  		wireType := int(wire & 0x7)
 11610  		if wireType == 4 {
 11611  			return fmt.Errorf("proto: InnerInner: wiretype end group for non-group")
 11612  		}
 11613  		if fieldNum <= 0 {
 11614  			return fmt.Errorf("proto: InnerInner: illegal tag %d (wire type %d)", fieldNum, wire)
 11615  		}
 11616  		switch fieldNum {
 11617  		case 1:
 11618  			if wireType != 2 {
 11619  				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
 11620  			}
 11621  			var stringLen uint64
 11622  			for shift := uint(0); ; shift += 7 {
 11623  				if shift >= 64 {
 11624  					return ErrIntOverflowUnknonwnproto
 11625  				}
 11626  				if iNdEx >= l {
 11627  					return io.ErrUnexpectedEOF
 11628  				}
 11629  				b := dAtA[iNdEx]
 11630  				iNdEx++
 11631  				stringLen |= uint64(b&0x7F) << shift
 11632  				if b < 0x80 {
 11633  					break
 11634  				}
 11635  			}
 11636  			intStringLen := int(stringLen)
 11637  			if intStringLen < 0 {
 11638  				return ErrInvalidLengthUnknonwnproto
 11639  			}
 11640  			postIndex := iNdEx + intStringLen
 11641  			if postIndex < 0 {
 11642  				return ErrInvalidLengthUnknonwnproto
 11643  			}
 11644  			if postIndex > l {
 11645  				return io.ErrUnexpectedEOF
 11646  			}
 11647  			m.Id = string(dAtA[iNdEx:postIndex])
 11648  			iNdEx = postIndex
 11649  		case 2:
 11650  			if wireType != 0 {
 11651  				return fmt.Errorf("proto: wrong wireType = %d for field Value", wireType)
 11652  			}
 11653  			m.Value = 0
 11654  			for shift := uint(0); ; shift += 7 {
 11655  				if shift >= 64 {
 11656  					return ErrIntOverflowUnknonwnproto
 11657  				}
 11658  				if iNdEx >= l {
 11659  					return io.ErrUnexpectedEOF
 11660  				}
 11661  				b := dAtA[iNdEx]
 11662  				iNdEx++
 11663  				m.Value |= int64(b&0x7F) << shift
 11664  				if b < 0x80 {
 11665  					break
 11666  				}
 11667  			}
 11668  		default:
 11669  			iNdEx = preIndex
 11670  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
 11671  			if err != nil {
 11672  				return err
 11673  			}
 11674  			if (skippy < 0) || (iNdEx+skippy) < 0 {
 11675  				return ErrInvalidLengthUnknonwnproto
 11676  			}
 11677  			if (iNdEx + skippy) > l {
 11678  				return io.ErrUnexpectedEOF
 11679  			}
 11680  			iNdEx += skippy
 11681  		}
 11682  	}
 11683  
 11684  	if iNdEx > l {
 11685  		return io.ErrUnexpectedEOF
 11686  	}
 11687  	return nil
 11688  }
 11689  func (m *TestVersionFD1) Unmarshal(dAtA []byte) error {
 11690  	l := len(dAtA)
 11691  	iNdEx := 0
 11692  	for iNdEx < l {
 11693  		preIndex := iNdEx
 11694  		var wire uint64
 11695  		for shift := uint(0); ; shift += 7 {
 11696  			if shift >= 64 {
 11697  				return ErrIntOverflowUnknonwnproto
 11698  			}
 11699  			if iNdEx >= l {
 11700  				return io.ErrUnexpectedEOF
 11701  			}
 11702  			b := dAtA[iNdEx]
 11703  			iNdEx++
 11704  			wire |= uint64(b&0x7F) << shift
 11705  			if b < 0x80 {
 11706  				break
 11707  			}
 11708  		}
 11709  		fieldNum := int32(wire >> 3)
 11710  		wireType := int(wire & 0x7)
 11711  		if wireType == 4 {
 11712  			return fmt.Errorf("proto: TestVersionFD1: wiretype end group for non-group")
 11713  		}
 11714  		if fieldNum <= 0 {
 11715  			return fmt.Errorf("proto: TestVersionFD1: illegal tag %d (wire type %d)", fieldNum, wire)
 11716  		}
 11717  		switch fieldNum {
 11718  		case 1:
 11719  			if wireType != 0 {
 11720  				return fmt.Errorf("proto: wrong wireType = %d for field X", wireType)
 11721  			}
 11722  			m.X = 0
 11723  			for shift := uint(0); ; shift += 7 {
 11724  				if shift >= 64 {
 11725  					return ErrIntOverflowUnknonwnproto
 11726  				}
 11727  				if iNdEx >= l {
 11728  					return io.ErrUnexpectedEOF
 11729  				}
 11730  				b := dAtA[iNdEx]
 11731  				iNdEx++
 11732  				m.X |= int64(b&0x7F) << shift
 11733  				if b < 0x80 {
 11734  					break
 11735  				}
 11736  			}
 11737  		case 2:
 11738  			if wireType != 2 {
 11739  				return fmt.Errorf("proto: wrong wireType = %d for field A", wireType)
 11740  			}
 11741  			var msglen int
 11742  			for shift := uint(0); ; shift += 7 {
 11743  				if shift >= 64 {
 11744  					return ErrIntOverflowUnknonwnproto
 11745  				}
 11746  				if iNdEx >= l {
 11747  					return io.ErrUnexpectedEOF
 11748  				}
 11749  				b := dAtA[iNdEx]
 11750  				iNdEx++
 11751  				msglen |= int(b&0x7F) << shift
 11752  				if b < 0x80 {
 11753  					break
 11754  				}
 11755  			}
 11756  			if msglen < 0 {
 11757  				return ErrInvalidLengthUnknonwnproto
 11758  			}
 11759  			postIndex := iNdEx + msglen
 11760  			if postIndex < 0 {
 11761  				return ErrInvalidLengthUnknonwnproto
 11762  			}
 11763  			if postIndex > l {
 11764  				return io.ErrUnexpectedEOF
 11765  			}
 11766  			if m.A == nil {
 11767  				m.A = &TestVersion1{}
 11768  			}
 11769  			if err := m.A.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11770  				return err
 11771  			}
 11772  			iNdEx = postIndex
 11773  		case 6:
 11774  			if wireType != 0 {
 11775  				return fmt.Errorf("proto: wrong wireType = %d for field E", wireType)
 11776  			}
 11777  			var v int32
 11778  			for shift := uint(0); ; shift += 7 {
 11779  				if shift >= 64 {
 11780  					return ErrIntOverflowUnknonwnproto
 11781  				}
 11782  				if iNdEx >= l {
 11783  					return io.ErrUnexpectedEOF
 11784  				}
 11785  				b := dAtA[iNdEx]
 11786  				iNdEx++
 11787  				v |= int32(b&0x7F) << shift
 11788  				if b < 0x80 {
 11789  					break
 11790  				}
 11791  			}
 11792  			m.Sum = &TestVersionFD1_E{v}
 11793  		case 7:
 11794  			if wireType != 2 {
 11795  				return fmt.Errorf("proto: wrong wireType = %d for field F", wireType)
 11796  			}
 11797  			var msglen int
 11798  			for shift := uint(0); ; shift += 7 {
 11799  				if shift >= 64 {
 11800  					return ErrIntOverflowUnknonwnproto
 11801  				}
 11802  				if iNdEx >= l {
 11803  					return io.ErrUnexpectedEOF
 11804  				}
 11805  				b := dAtA[iNdEx]
 11806  				iNdEx++
 11807  				msglen |= int(b&0x7F) << shift
 11808  				if b < 0x80 {
 11809  					break
 11810  				}
 11811  			}
 11812  			if msglen < 0 {
 11813  				return ErrInvalidLengthUnknonwnproto
 11814  			}
 11815  			postIndex := iNdEx + msglen
 11816  			if postIndex < 0 {
 11817  				return ErrInvalidLengthUnknonwnproto
 11818  			}
 11819  			if postIndex > l {
 11820  				return io.ErrUnexpectedEOF
 11821  			}
 11822  			v := &TestVersion1{}
 11823  			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11824  				return err
 11825  			}
 11826  			m.Sum = &TestVersionFD1_F{v}
 11827  			iNdEx = postIndex
 11828  		case 8:
 11829  			if wireType != 2 {
 11830  				return fmt.Errorf("proto: wrong wireType = %d for field G", wireType)
 11831  			}
 11832  			var msglen int
 11833  			for shift := uint(0); ; shift += 7 {
 11834  				if shift >= 64 {
 11835  					return ErrIntOverflowUnknonwnproto
 11836  				}
 11837  				if iNdEx >= l {
 11838  					return io.ErrUnexpectedEOF
 11839  				}
 11840  				b := dAtA[iNdEx]
 11841  				iNdEx++
 11842  				msglen |= int(b&0x7F) << shift
 11843  				if b < 0x80 {
 11844  					break
 11845  				}
 11846  			}
 11847  			if msglen < 0 {
 11848  				return ErrInvalidLengthUnknonwnproto
 11849  			}
 11850  			postIndex := iNdEx + msglen
 11851  			if postIndex < 0 {
 11852  				return ErrInvalidLengthUnknonwnproto
 11853  			}
 11854  			if postIndex > l {
 11855  				return io.ErrUnexpectedEOF
 11856  			}
 11857  			if m.G == nil {
 11858  				m.G = &types.Any{}
 11859  			}
 11860  			if err := m.G.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11861  				return err
 11862  			}
 11863  			iNdEx = postIndex
 11864  		case 9:
 11865  			if wireType != 2 {
 11866  				return fmt.Errorf("proto: wrong wireType = %d for field H", wireType)
 11867  			}
 11868  			var msglen int
 11869  			for shift := uint(0); ; shift += 7 {
 11870  				if shift >= 64 {
 11871  					return ErrIntOverflowUnknonwnproto
 11872  				}
 11873  				if iNdEx >= l {
 11874  					return io.ErrUnexpectedEOF
 11875  				}
 11876  				b := dAtA[iNdEx]
 11877  				iNdEx++
 11878  				msglen |= int(b&0x7F) << shift
 11879  				if b < 0x80 {
 11880  					break
 11881  				}
 11882  			}
 11883  			if msglen < 0 {
 11884  				return ErrInvalidLengthUnknonwnproto
 11885  			}
 11886  			postIndex := iNdEx + msglen
 11887  			if postIndex < 0 {
 11888  				return ErrInvalidLengthUnknonwnproto
 11889  			}
 11890  			if postIndex > l {
 11891  				return io.ErrUnexpectedEOF
 11892  			}
 11893  			m.H = append(m.H, &TestVersion1{})
 11894  			if err := m.H[len(m.H)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11895  				return err
 11896  			}
 11897  			iNdEx = postIndex
 11898  		default:
 11899  			iNdEx = preIndex
 11900  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
 11901  			if err != nil {
 11902  				return err
 11903  			}
 11904  			if (skippy < 0) || (iNdEx+skippy) < 0 {
 11905  				return ErrInvalidLengthUnknonwnproto
 11906  			}
 11907  			if (iNdEx + skippy) > l {
 11908  				return io.ErrUnexpectedEOF
 11909  			}
 11910  			iNdEx += skippy
 11911  		}
 11912  	}
 11913  
 11914  	if iNdEx > l {
 11915  		return io.ErrUnexpectedEOF
 11916  	}
 11917  	return nil
 11918  }
 11919  func (m *TestVersionFD1WithExtraAny) Unmarshal(dAtA []byte) error {
 11920  	l := len(dAtA)
 11921  	iNdEx := 0
 11922  	for iNdEx < l {
 11923  		preIndex := iNdEx
 11924  		var wire uint64
 11925  		for shift := uint(0); ; shift += 7 {
 11926  			if shift >= 64 {
 11927  				return ErrIntOverflowUnknonwnproto
 11928  			}
 11929  			if iNdEx >= l {
 11930  				return io.ErrUnexpectedEOF
 11931  			}
 11932  			b := dAtA[iNdEx]
 11933  			iNdEx++
 11934  			wire |= uint64(b&0x7F) << shift
 11935  			if b < 0x80 {
 11936  				break
 11937  			}
 11938  		}
 11939  		fieldNum := int32(wire >> 3)
 11940  		wireType := int(wire & 0x7)
 11941  		if wireType == 4 {
 11942  			return fmt.Errorf("proto: TestVersionFD1WithExtraAny: wiretype end group for non-group")
 11943  		}
 11944  		if fieldNum <= 0 {
 11945  			return fmt.Errorf("proto: TestVersionFD1WithExtraAny: illegal tag %d (wire type %d)", fieldNum, wire)
 11946  		}
 11947  		switch fieldNum {
 11948  		case 1:
 11949  			if wireType != 0 {
 11950  				return fmt.Errorf("proto: wrong wireType = %d for field X", wireType)
 11951  			}
 11952  			m.X = 0
 11953  			for shift := uint(0); ; shift += 7 {
 11954  				if shift >= 64 {
 11955  					return ErrIntOverflowUnknonwnproto
 11956  				}
 11957  				if iNdEx >= l {
 11958  					return io.ErrUnexpectedEOF
 11959  				}
 11960  				b := dAtA[iNdEx]
 11961  				iNdEx++
 11962  				m.X |= int64(b&0x7F) << shift
 11963  				if b < 0x80 {
 11964  					break
 11965  				}
 11966  			}
 11967  		case 2:
 11968  			if wireType != 2 {
 11969  				return fmt.Errorf("proto: wrong wireType = %d for field A", wireType)
 11970  			}
 11971  			var msglen int
 11972  			for shift := uint(0); ; shift += 7 {
 11973  				if shift >= 64 {
 11974  					return ErrIntOverflowUnknonwnproto
 11975  				}
 11976  				if iNdEx >= l {
 11977  					return io.ErrUnexpectedEOF
 11978  				}
 11979  				b := dAtA[iNdEx]
 11980  				iNdEx++
 11981  				msglen |= int(b&0x7F) << shift
 11982  				if b < 0x80 {
 11983  					break
 11984  				}
 11985  			}
 11986  			if msglen < 0 {
 11987  				return ErrInvalidLengthUnknonwnproto
 11988  			}
 11989  			postIndex := iNdEx + msglen
 11990  			if postIndex < 0 {
 11991  				return ErrInvalidLengthUnknonwnproto
 11992  			}
 11993  			if postIndex > l {
 11994  				return io.ErrUnexpectedEOF
 11995  			}
 11996  			if m.A == nil {
 11997  				m.A = &TestVersion1{}
 11998  			}
 11999  			if err := m.A.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 12000  				return err
 12001  			}
 12002  			iNdEx = postIndex
 12003  		case 6:
 12004  			if wireType != 0 {
 12005  				return fmt.Errorf("proto: wrong wireType = %d for field E", wireType)
 12006  			}
 12007  			var v int32
 12008  			for shift := uint(0); ; shift += 7 {
 12009  				if shift >= 64 {
 12010  					return ErrIntOverflowUnknonwnproto
 12011  				}
 12012  				if iNdEx >= l {
 12013  					return io.ErrUnexpectedEOF
 12014  				}
 12015  				b := dAtA[iNdEx]
 12016  				iNdEx++
 12017  				v |= int32(b&0x7F) << shift
 12018  				if b < 0x80 {
 12019  					break
 12020  				}
 12021  			}
 12022  			m.Sum = &TestVersionFD1WithExtraAny_E{v}
 12023  		case 7:
 12024  			if wireType != 2 {
 12025  				return fmt.Errorf("proto: wrong wireType = %d for field F", wireType)
 12026  			}
 12027  			var msglen int
 12028  			for shift := uint(0); ; shift += 7 {
 12029  				if shift >= 64 {
 12030  					return ErrIntOverflowUnknonwnproto
 12031  				}
 12032  				if iNdEx >= l {
 12033  					return io.ErrUnexpectedEOF
 12034  				}
 12035  				b := dAtA[iNdEx]
 12036  				iNdEx++
 12037  				msglen |= int(b&0x7F) << shift
 12038  				if b < 0x80 {
 12039  					break
 12040  				}
 12041  			}
 12042  			if msglen < 0 {
 12043  				return ErrInvalidLengthUnknonwnproto
 12044  			}
 12045  			postIndex := iNdEx + msglen
 12046  			if postIndex < 0 {
 12047  				return ErrInvalidLengthUnknonwnproto
 12048  			}
 12049  			if postIndex > l {
 12050  				return io.ErrUnexpectedEOF
 12051  			}
 12052  			v := &TestVersion1{}
 12053  			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 12054  				return err
 12055  			}
 12056  			m.Sum = &TestVersionFD1WithExtraAny_F{v}
 12057  			iNdEx = postIndex
 12058  		case 8:
 12059  			if wireType != 2 {
 12060  				return fmt.Errorf("proto: wrong wireType = %d for field G", wireType)
 12061  			}
 12062  			var msglen int
 12063  			for shift := uint(0); ; shift += 7 {
 12064  				if shift >= 64 {
 12065  					return ErrIntOverflowUnknonwnproto
 12066  				}
 12067  				if iNdEx >= l {
 12068  					return io.ErrUnexpectedEOF
 12069  				}
 12070  				b := dAtA[iNdEx]
 12071  				iNdEx++
 12072  				msglen |= int(b&0x7F) << shift
 12073  				if b < 0x80 {
 12074  					break
 12075  				}
 12076  			}
 12077  			if msglen < 0 {
 12078  				return ErrInvalidLengthUnknonwnproto
 12079  			}
 12080  			postIndex := iNdEx + msglen
 12081  			if postIndex < 0 {
 12082  				return ErrInvalidLengthUnknonwnproto
 12083  			}
 12084  			if postIndex > l {
 12085  				return io.ErrUnexpectedEOF
 12086  			}
 12087  			if m.G == nil {
 12088  				m.G = &AnyWithExtra{}
 12089  			}
 12090  			if err := m.G.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 12091  				return err
 12092  			}
 12093  			iNdEx = postIndex
 12094  		case 9:
 12095  			if wireType != 2 {
 12096  				return fmt.Errorf("proto: wrong wireType = %d for field H", wireType)
 12097  			}
 12098  			var msglen int
 12099  			for shift := uint(0); ; shift += 7 {
 12100  				if shift >= 64 {
 12101  					return ErrIntOverflowUnknonwnproto
 12102  				}
 12103  				if iNdEx >= l {
 12104  					return io.ErrUnexpectedEOF
 12105  				}
 12106  				b := dAtA[iNdEx]
 12107  				iNdEx++
 12108  				msglen |= int(b&0x7F) << shift
 12109  				if b < 0x80 {
 12110  					break
 12111  				}
 12112  			}
 12113  			if msglen < 0 {
 12114  				return ErrInvalidLengthUnknonwnproto
 12115  			}
 12116  			postIndex := iNdEx + msglen
 12117  			if postIndex < 0 {
 12118  				return ErrInvalidLengthUnknonwnproto
 12119  			}
 12120  			if postIndex > l {
 12121  				return io.ErrUnexpectedEOF
 12122  			}
 12123  			m.H = append(m.H, &TestVersion1{})
 12124  			if err := m.H[len(m.H)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 12125  				return err
 12126  			}
 12127  			iNdEx = postIndex
 12128  		default:
 12129  			iNdEx = preIndex
 12130  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
 12131  			if err != nil {
 12132  				return err
 12133  			}
 12134  			if (skippy < 0) || (iNdEx+skippy) < 0 {
 12135  				return ErrInvalidLengthUnknonwnproto
 12136  			}
 12137  			if (iNdEx + skippy) > l {
 12138  				return io.ErrUnexpectedEOF
 12139  			}
 12140  			iNdEx += skippy
 12141  		}
 12142  	}
 12143  
 12144  	if iNdEx > l {
 12145  		return io.ErrUnexpectedEOF
 12146  	}
 12147  	return nil
 12148  }
 12149  func (m *AnyWithExtra) Unmarshal(dAtA []byte) error {
 12150  	l := len(dAtA)
 12151  	iNdEx := 0
 12152  	for iNdEx < l {
 12153  		preIndex := iNdEx
 12154  		var wire uint64
 12155  		for shift := uint(0); ; shift += 7 {
 12156  			if shift >= 64 {
 12157  				return ErrIntOverflowUnknonwnproto
 12158  			}
 12159  			if iNdEx >= l {
 12160  				return io.ErrUnexpectedEOF
 12161  			}
 12162  			b := dAtA[iNdEx]
 12163  			iNdEx++
 12164  			wire |= uint64(b&0x7F) << shift
 12165  			if b < 0x80 {
 12166  				break
 12167  			}
 12168  		}
 12169  		fieldNum := int32(wire >> 3)
 12170  		wireType := int(wire & 0x7)
 12171  		if wireType == 4 {
 12172  			return fmt.Errorf("proto: AnyWithExtra: wiretype end group for non-group")
 12173  		}
 12174  		if fieldNum <= 0 {
 12175  			return fmt.Errorf("proto: AnyWithExtra: illegal tag %d (wire type %d)", fieldNum, wire)
 12176  		}
 12177  		switch fieldNum {
 12178  		case 1:
 12179  			if wireType != 2 {
 12180  				return fmt.Errorf("proto: wrong wireType = %d for field Any", wireType)
 12181  			}
 12182  			var msglen int
 12183  			for shift := uint(0); ; shift += 7 {
 12184  				if shift >= 64 {
 12185  					return ErrIntOverflowUnknonwnproto
 12186  				}
 12187  				if iNdEx >= l {
 12188  					return io.ErrUnexpectedEOF
 12189  				}
 12190  				b := dAtA[iNdEx]
 12191  				iNdEx++
 12192  				msglen |= int(b&0x7F) << shift
 12193  				if b < 0x80 {
 12194  					break
 12195  				}
 12196  			}
 12197  			if msglen < 0 {
 12198  				return ErrInvalidLengthUnknonwnproto
 12199  			}
 12200  			postIndex := iNdEx + msglen
 12201  			if postIndex < 0 {
 12202  				return ErrInvalidLengthUnknonwnproto
 12203  			}
 12204  			if postIndex > l {
 12205  				return io.ErrUnexpectedEOF
 12206  			}
 12207  			if m.Any == nil {
 12208  				m.Any = &types.Any{}
 12209  			}
 12210  			if err := m.Any.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 12211  				return err
 12212  			}
 12213  			iNdEx = postIndex
 12214  		case 3:
 12215  			if wireType != 0 {
 12216  				return fmt.Errorf("proto: wrong wireType = %d for field B", wireType)
 12217  			}
 12218  			m.B = 0
 12219  			for shift := uint(0); ; shift += 7 {
 12220  				if shift >= 64 {
 12221  					return ErrIntOverflowUnknonwnproto
 12222  				}
 12223  				if iNdEx >= l {
 12224  					return io.ErrUnexpectedEOF
 12225  				}
 12226  				b := dAtA[iNdEx]
 12227  				iNdEx++
 12228  				m.B |= int64(b&0x7F) << shift
 12229  				if b < 0x80 {
 12230  					break
 12231  				}
 12232  			}
 12233  		case 4:
 12234  			if wireType != 0 {
 12235  				return fmt.Errorf("proto: wrong wireType = %d for field C", wireType)
 12236  			}
 12237  			m.C = 0
 12238  			for shift := uint(0); ; shift += 7 {
 12239  				if shift >= 64 {
 12240  					return ErrIntOverflowUnknonwnproto
 12241  				}
 12242  				if iNdEx >= l {
 12243  					return io.ErrUnexpectedEOF
 12244  				}
 12245  				b := dAtA[iNdEx]
 12246  				iNdEx++
 12247  				m.C |= int64(b&0x7F) << shift
 12248  				if b < 0x80 {
 12249  					break
 12250  				}
 12251  			}
 12252  		default:
 12253  			iNdEx = preIndex
 12254  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
 12255  			if err != nil {
 12256  				return err
 12257  			}
 12258  			if (skippy < 0) || (iNdEx+skippy) < 0 {
 12259  				return ErrInvalidLengthUnknonwnproto
 12260  			}
 12261  			if (iNdEx + skippy) > l {
 12262  				return io.ErrUnexpectedEOF
 12263  			}
 12264  			iNdEx += skippy
 12265  		}
 12266  	}
 12267  
 12268  	if iNdEx > l {
 12269  		return io.ErrUnexpectedEOF
 12270  	}
 12271  	return nil
 12272  }
 12273  func (m *TestUpdatedTxRaw) Unmarshal(dAtA []byte) error {
 12274  	l := len(dAtA)
 12275  	iNdEx := 0
 12276  	for iNdEx < l {
 12277  		preIndex := iNdEx
 12278  		var wire uint64
 12279  		for shift := uint(0); ; shift += 7 {
 12280  			if shift >= 64 {
 12281  				return ErrIntOverflowUnknonwnproto
 12282  			}
 12283  			if iNdEx >= l {
 12284  				return io.ErrUnexpectedEOF
 12285  			}
 12286  			b := dAtA[iNdEx]
 12287  			iNdEx++
 12288  			wire |= uint64(b&0x7F) << shift
 12289  			if b < 0x80 {
 12290  				break
 12291  			}
 12292  		}
 12293  		fieldNum := int32(wire >> 3)
 12294  		wireType := int(wire & 0x7)
 12295  		if wireType == 4 {
 12296  			return fmt.Errorf("proto: TestUpdatedTxRaw: wiretype end group for non-group")
 12297  		}
 12298  		if fieldNum <= 0 {
 12299  			return fmt.Errorf("proto: TestUpdatedTxRaw: illegal tag %d (wire type %d)", fieldNum, wire)
 12300  		}
 12301  		switch fieldNum {
 12302  		case 1:
 12303  			if wireType != 2 {
 12304  				return fmt.Errorf("proto: wrong wireType = %d for field BodyBytes", wireType)
 12305  			}
 12306  			var byteLen int
 12307  			for shift := uint(0); ; shift += 7 {
 12308  				if shift >= 64 {
 12309  					return ErrIntOverflowUnknonwnproto
 12310  				}
 12311  				if iNdEx >= l {
 12312  					return io.ErrUnexpectedEOF
 12313  				}
 12314  				b := dAtA[iNdEx]
 12315  				iNdEx++
 12316  				byteLen |= int(b&0x7F) << shift
 12317  				if b < 0x80 {
 12318  					break
 12319  				}
 12320  			}
 12321  			if byteLen < 0 {
 12322  				return ErrInvalidLengthUnknonwnproto
 12323  			}
 12324  			postIndex := iNdEx + byteLen
 12325  			if postIndex < 0 {
 12326  				return ErrInvalidLengthUnknonwnproto
 12327  			}
 12328  			if postIndex > l {
 12329  				return io.ErrUnexpectedEOF
 12330  			}
 12331  			m.BodyBytes = append(m.BodyBytes[:0], dAtA[iNdEx:postIndex]...)
 12332  			if m.BodyBytes == nil {
 12333  				m.BodyBytes = []byte{}
 12334  			}
 12335  			iNdEx = postIndex
 12336  		case 2:
 12337  			if wireType != 2 {
 12338  				return fmt.Errorf("proto: wrong wireType = %d for field AuthInfoBytes", wireType)
 12339  			}
 12340  			var byteLen int
 12341  			for shift := uint(0); ; shift += 7 {
 12342  				if shift >= 64 {
 12343  					return ErrIntOverflowUnknonwnproto
 12344  				}
 12345  				if iNdEx >= l {
 12346  					return io.ErrUnexpectedEOF
 12347  				}
 12348  				b := dAtA[iNdEx]
 12349  				iNdEx++
 12350  				byteLen |= int(b&0x7F) << shift
 12351  				if b < 0x80 {
 12352  					break
 12353  				}
 12354  			}
 12355  			if byteLen < 0 {
 12356  				return ErrInvalidLengthUnknonwnproto
 12357  			}
 12358  			postIndex := iNdEx + byteLen
 12359  			if postIndex < 0 {
 12360  				return ErrInvalidLengthUnknonwnproto
 12361  			}
 12362  			if postIndex > l {
 12363  				return io.ErrUnexpectedEOF
 12364  			}
 12365  			m.AuthInfoBytes = append(m.AuthInfoBytes[:0], dAtA[iNdEx:postIndex]...)
 12366  			if m.AuthInfoBytes == nil {
 12367  				m.AuthInfoBytes = []byte{}
 12368  			}
 12369  			iNdEx = postIndex
 12370  		case 3:
 12371  			if wireType != 2 {
 12372  				return fmt.Errorf("proto: wrong wireType = %d for field Signatures", wireType)
 12373  			}
 12374  			var byteLen int
 12375  			for shift := uint(0); ; shift += 7 {
 12376  				if shift >= 64 {
 12377  					return ErrIntOverflowUnknonwnproto
 12378  				}
 12379  				if iNdEx >= l {
 12380  					return io.ErrUnexpectedEOF
 12381  				}
 12382  				b := dAtA[iNdEx]
 12383  				iNdEx++
 12384  				byteLen |= int(b&0x7F) << shift
 12385  				if b < 0x80 {
 12386  					break
 12387  				}
 12388  			}
 12389  			if byteLen < 0 {
 12390  				return ErrInvalidLengthUnknonwnproto
 12391  			}
 12392  			postIndex := iNdEx + byteLen
 12393  			if postIndex < 0 {
 12394  				return ErrInvalidLengthUnknonwnproto
 12395  			}
 12396  			if postIndex > l {
 12397  				return io.ErrUnexpectedEOF
 12398  			}
 12399  			m.Signatures = append(m.Signatures, make([]byte, postIndex-iNdEx))
 12400  			copy(m.Signatures[len(m.Signatures)-1], dAtA[iNdEx:postIndex])
 12401  			iNdEx = postIndex
 12402  		case 5:
 12403  			if wireType != 2 {
 12404  				return fmt.Errorf("proto: wrong wireType = %d for field NewField_5", wireType)
 12405  			}
 12406  			var byteLen int
 12407  			for shift := uint(0); ; shift += 7 {
 12408  				if shift >= 64 {
 12409  					return ErrIntOverflowUnknonwnproto
 12410  				}
 12411  				if iNdEx >= l {
 12412  					return io.ErrUnexpectedEOF
 12413  				}
 12414  				b := dAtA[iNdEx]
 12415  				iNdEx++
 12416  				byteLen |= int(b&0x7F) << shift
 12417  				if b < 0x80 {
 12418  					break
 12419  				}
 12420  			}
 12421  			if byteLen < 0 {
 12422  				return ErrInvalidLengthUnknonwnproto
 12423  			}
 12424  			postIndex := iNdEx + byteLen
 12425  			if postIndex < 0 {
 12426  				return ErrInvalidLengthUnknonwnproto
 12427  			}
 12428  			if postIndex > l {
 12429  				return io.ErrUnexpectedEOF
 12430  			}
 12431  			m.NewField_5 = append(m.NewField_5[:0], dAtA[iNdEx:postIndex]...)
 12432  			if m.NewField_5 == nil {
 12433  				m.NewField_5 = []byte{}
 12434  			}
 12435  			iNdEx = postIndex
 12436  		case 1024:
 12437  			if wireType != 2 {
 12438  				return fmt.Errorf("proto: wrong wireType = %d for field NewField_1024", wireType)
 12439  			}
 12440  			var byteLen int
 12441  			for shift := uint(0); ; shift += 7 {
 12442  				if shift >= 64 {
 12443  					return ErrIntOverflowUnknonwnproto
 12444  				}
 12445  				if iNdEx >= l {
 12446  					return io.ErrUnexpectedEOF
 12447  				}
 12448  				b := dAtA[iNdEx]
 12449  				iNdEx++
 12450  				byteLen |= int(b&0x7F) << shift
 12451  				if b < 0x80 {
 12452  					break
 12453  				}
 12454  			}
 12455  			if byteLen < 0 {
 12456  				return ErrInvalidLengthUnknonwnproto
 12457  			}
 12458  			postIndex := iNdEx + byteLen
 12459  			if postIndex < 0 {
 12460  				return ErrInvalidLengthUnknonwnproto
 12461  			}
 12462  			if postIndex > l {
 12463  				return io.ErrUnexpectedEOF
 12464  			}
 12465  			m.NewField_1024 = append(m.NewField_1024[:0], dAtA[iNdEx:postIndex]...)
 12466  			if m.NewField_1024 == nil {
 12467  				m.NewField_1024 = []byte{}
 12468  			}
 12469  			iNdEx = postIndex
 12470  		default:
 12471  			iNdEx = preIndex
 12472  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
 12473  			if err != nil {
 12474  				return err
 12475  			}
 12476  			if (skippy < 0) || (iNdEx+skippy) < 0 {
 12477  				return ErrInvalidLengthUnknonwnproto
 12478  			}
 12479  			if (iNdEx + skippy) > l {
 12480  				return io.ErrUnexpectedEOF
 12481  			}
 12482  			iNdEx += skippy
 12483  		}
 12484  	}
 12485  
 12486  	if iNdEx > l {
 12487  		return io.ErrUnexpectedEOF
 12488  	}
 12489  	return nil
 12490  }
 12491  func (m *TestUpdatedTxBody) Unmarshal(dAtA []byte) error {
 12492  	l := len(dAtA)
 12493  	iNdEx := 0
 12494  	for iNdEx < l {
 12495  		preIndex := iNdEx
 12496  		var wire uint64
 12497  		for shift := uint(0); ; shift += 7 {
 12498  			if shift >= 64 {
 12499  				return ErrIntOverflowUnknonwnproto
 12500  			}
 12501  			if iNdEx >= l {
 12502  				return io.ErrUnexpectedEOF
 12503  			}
 12504  			b := dAtA[iNdEx]
 12505  			iNdEx++
 12506  			wire |= uint64(b&0x7F) << shift
 12507  			if b < 0x80 {
 12508  				break
 12509  			}
 12510  		}
 12511  		fieldNum := int32(wire >> 3)
 12512  		wireType := int(wire & 0x7)
 12513  		if wireType == 4 {
 12514  			return fmt.Errorf("proto: TestUpdatedTxBody: wiretype end group for non-group")
 12515  		}
 12516  		if fieldNum <= 0 {
 12517  			return fmt.Errorf("proto: TestUpdatedTxBody: illegal tag %d (wire type %d)", fieldNum, wire)
 12518  		}
 12519  		switch fieldNum {
 12520  		case 1:
 12521  			if wireType != 2 {
 12522  				return fmt.Errorf("proto: wrong wireType = %d for field Messages", wireType)
 12523  			}
 12524  			var msglen int
 12525  			for shift := uint(0); ; shift += 7 {
 12526  				if shift >= 64 {
 12527  					return ErrIntOverflowUnknonwnproto
 12528  				}
 12529  				if iNdEx >= l {
 12530  					return io.ErrUnexpectedEOF
 12531  				}
 12532  				b := dAtA[iNdEx]
 12533  				iNdEx++
 12534  				msglen |= int(b&0x7F) << shift
 12535  				if b < 0x80 {
 12536  					break
 12537  				}
 12538  			}
 12539  			if msglen < 0 {
 12540  				return ErrInvalidLengthUnknonwnproto
 12541  			}
 12542  			postIndex := iNdEx + msglen
 12543  			if postIndex < 0 {
 12544  				return ErrInvalidLengthUnknonwnproto
 12545  			}
 12546  			if postIndex > l {
 12547  				return io.ErrUnexpectedEOF
 12548  			}
 12549  			m.Messages = append(m.Messages, &types.Any{})
 12550  			if err := m.Messages[len(m.Messages)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 12551  				return err
 12552  			}
 12553  			iNdEx = postIndex
 12554  		case 2:
 12555  			if wireType != 2 {
 12556  				return fmt.Errorf("proto: wrong wireType = %d for field Memo", wireType)
 12557  			}
 12558  			var stringLen uint64
 12559  			for shift := uint(0); ; shift += 7 {
 12560  				if shift >= 64 {
 12561  					return ErrIntOverflowUnknonwnproto
 12562  				}
 12563  				if iNdEx >= l {
 12564  					return io.ErrUnexpectedEOF
 12565  				}
 12566  				b := dAtA[iNdEx]
 12567  				iNdEx++
 12568  				stringLen |= uint64(b&0x7F) << shift
 12569  				if b < 0x80 {
 12570  					break
 12571  				}
 12572  			}
 12573  			intStringLen := int(stringLen)
 12574  			if intStringLen < 0 {
 12575  				return ErrInvalidLengthUnknonwnproto
 12576  			}
 12577  			postIndex := iNdEx + intStringLen
 12578  			if postIndex < 0 {
 12579  				return ErrInvalidLengthUnknonwnproto
 12580  			}
 12581  			if postIndex > l {
 12582  				return io.ErrUnexpectedEOF
 12583  			}
 12584  			m.Memo = string(dAtA[iNdEx:postIndex])
 12585  			iNdEx = postIndex
 12586  		case 3:
 12587  			if wireType != 0 {
 12588  				return fmt.Errorf("proto: wrong wireType = %d for field TimeoutHeight", wireType)
 12589  			}
 12590  			m.TimeoutHeight = 0
 12591  			for shift := uint(0); ; shift += 7 {
 12592  				if shift >= 64 {
 12593  					return ErrIntOverflowUnknonwnproto
 12594  				}
 12595  				if iNdEx >= l {
 12596  					return io.ErrUnexpectedEOF
 12597  				}
 12598  				b := dAtA[iNdEx]
 12599  				iNdEx++
 12600  				m.TimeoutHeight |= int64(b&0x7F) << shift
 12601  				if b < 0x80 {
 12602  					break
 12603  				}
 12604  			}
 12605  		case 4:
 12606  			if wireType != 0 {
 12607  				return fmt.Errorf("proto: wrong wireType = %d for field SomeNewField", wireType)
 12608  			}
 12609  			m.SomeNewField = 0
 12610  			for shift := uint(0); ; shift += 7 {
 12611  				if shift >= 64 {
 12612  					return ErrIntOverflowUnknonwnproto
 12613  				}
 12614  				if iNdEx >= l {
 12615  					return io.ErrUnexpectedEOF
 12616  				}
 12617  				b := dAtA[iNdEx]
 12618  				iNdEx++
 12619  				m.SomeNewField |= uint64(b&0x7F) << shift
 12620  				if b < 0x80 {
 12621  					break
 12622  				}
 12623  			}
 12624  		case 1023:
 12625  			if wireType != 2 {
 12626  				return fmt.Errorf("proto: wrong wireType = %d for field ExtensionOptions", wireType)
 12627  			}
 12628  			var msglen int
 12629  			for shift := uint(0); ; shift += 7 {
 12630  				if shift >= 64 {
 12631  					return ErrIntOverflowUnknonwnproto
 12632  				}
 12633  				if iNdEx >= l {
 12634  					return io.ErrUnexpectedEOF
 12635  				}
 12636  				b := dAtA[iNdEx]
 12637  				iNdEx++
 12638  				msglen |= int(b&0x7F) << shift
 12639  				if b < 0x80 {
 12640  					break
 12641  				}
 12642  			}
 12643  			if msglen < 0 {
 12644  				return ErrInvalidLengthUnknonwnproto
 12645  			}
 12646  			postIndex := iNdEx + msglen
 12647  			if postIndex < 0 {
 12648  				return ErrInvalidLengthUnknonwnproto
 12649  			}
 12650  			if postIndex > l {
 12651  				return io.ErrUnexpectedEOF
 12652  			}
 12653  			m.ExtensionOptions = append(m.ExtensionOptions, &types.Any{})
 12654  			if err := m.ExtensionOptions[len(m.ExtensionOptions)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 12655  				return err
 12656  			}
 12657  			iNdEx = postIndex
 12658  		case 1050:
 12659  			if wireType != 2 {
 12660  				return fmt.Errorf("proto: wrong wireType = %d for field SomeNewFieldNonCriticalField", wireType)
 12661  			}
 12662  			var stringLen uint64
 12663  			for shift := uint(0); ; shift += 7 {
 12664  				if shift >= 64 {
 12665  					return ErrIntOverflowUnknonwnproto
 12666  				}
 12667  				if iNdEx >= l {
 12668  					return io.ErrUnexpectedEOF
 12669  				}
 12670  				b := dAtA[iNdEx]
 12671  				iNdEx++
 12672  				stringLen |= uint64(b&0x7F) << shift
 12673  				if b < 0x80 {
 12674  					break
 12675  				}
 12676  			}
 12677  			intStringLen := int(stringLen)
 12678  			if intStringLen < 0 {
 12679  				return ErrInvalidLengthUnknonwnproto
 12680  			}
 12681  			postIndex := iNdEx + intStringLen
 12682  			if postIndex < 0 {
 12683  				return ErrInvalidLengthUnknonwnproto
 12684  			}
 12685  			if postIndex > l {
 12686  				return io.ErrUnexpectedEOF
 12687  			}
 12688  			m.SomeNewFieldNonCriticalField = string(dAtA[iNdEx:postIndex])
 12689  			iNdEx = postIndex
 12690  		case 2047:
 12691  			if wireType != 2 {
 12692  				return fmt.Errorf("proto: wrong wireType = %d for field NonCriticalExtensionOptions", wireType)
 12693  			}
 12694  			var msglen int
 12695  			for shift := uint(0); ; shift += 7 {
 12696  				if shift >= 64 {
 12697  					return ErrIntOverflowUnknonwnproto
 12698  				}
 12699  				if iNdEx >= l {
 12700  					return io.ErrUnexpectedEOF
 12701  				}
 12702  				b := dAtA[iNdEx]
 12703  				iNdEx++
 12704  				msglen |= int(b&0x7F) << shift
 12705  				if b < 0x80 {
 12706  					break
 12707  				}
 12708  			}
 12709  			if msglen < 0 {
 12710  				return ErrInvalidLengthUnknonwnproto
 12711  			}
 12712  			postIndex := iNdEx + msglen
 12713  			if postIndex < 0 {
 12714  				return ErrInvalidLengthUnknonwnproto
 12715  			}
 12716  			if postIndex > l {
 12717  				return io.ErrUnexpectedEOF
 12718  			}
 12719  			m.NonCriticalExtensionOptions = append(m.NonCriticalExtensionOptions, &types.Any{})
 12720  			if err := m.NonCriticalExtensionOptions[len(m.NonCriticalExtensionOptions)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 12721  				return err
 12722  			}
 12723  			iNdEx = postIndex
 12724  		default:
 12725  			iNdEx = preIndex
 12726  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
 12727  			if err != nil {
 12728  				return err
 12729  			}
 12730  			if (skippy < 0) || (iNdEx+skippy) < 0 {
 12731  				return ErrInvalidLengthUnknonwnproto
 12732  			}
 12733  			if (iNdEx + skippy) > l {
 12734  				return io.ErrUnexpectedEOF
 12735  			}
 12736  			iNdEx += skippy
 12737  		}
 12738  	}
 12739  
 12740  	if iNdEx > l {
 12741  		return io.ErrUnexpectedEOF
 12742  	}
 12743  	return nil
 12744  }
 12745  func (m *TestUpdatedAuthInfo) Unmarshal(dAtA []byte) error {
 12746  	l := len(dAtA)
 12747  	iNdEx := 0
 12748  	for iNdEx < l {
 12749  		preIndex := iNdEx
 12750  		var wire uint64
 12751  		for shift := uint(0); ; shift += 7 {
 12752  			if shift >= 64 {
 12753  				return ErrIntOverflowUnknonwnproto
 12754  			}
 12755  			if iNdEx >= l {
 12756  				return io.ErrUnexpectedEOF
 12757  			}
 12758  			b := dAtA[iNdEx]
 12759  			iNdEx++
 12760  			wire |= uint64(b&0x7F) << shift
 12761  			if b < 0x80 {
 12762  				break
 12763  			}
 12764  		}
 12765  		fieldNum := int32(wire >> 3)
 12766  		wireType := int(wire & 0x7)
 12767  		if wireType == 4 {
 12768  			return fmt.Errorf("proto: TestUpdatedAuthInfo: wiretype end group for non-group")
 12769  		}
 12770  		if fieldNum <= 0 {
 12771  			return fmt.Errorf("proto: TestUpdatedAuthInfo: illegal tag %d (wire type %d)", fieldNum, wire)
 12772  		}
 12773  		switch fieldNum {
 12774  		case 1:
 12775  			if wireType != 2 {
 12776  				return fmt.Errorf("proto: wrong wireType = %d for field SignerInfos", wireType)
 12777  			}
 12778  			var msglen int
 12779  			for shift := uint(0); ; shift += 7 {
 12780  				if shift >= 64 {
 12781  					return ErrIntOverflowUnknonwnproto
 12782  				}
 12783  				if iNdEx >= l {
 12784  					return io.ErrUnexpectedEOF
 12785  				}
 12786  				b := dAtA[iNdEx]
 12787  				iNdEx++
 12788  				msglen |= int(b&0x7F) << shift
 12789  				if b < 0x80 {
 12790  					break
 12791  				}
 12792  			}
 12793  			if msglen < 0 {
 12794  				return ErrInvalidLengthUnknonwnproto
 12795  			}
 12796  			postIndex := iNdEx + msglen
 12797  			if postIndex < 0 {
 12798  				return ErrInvalidLengthUnknonwnproto
 12799  			}
 12800  			if postIndex > l {
 12801  				return io.ErrUnexpectedEOF
 12802  			}
 12803  			m.SignerInfos = append(m.SignerInfos, &tx.SignerInfo{})
 12804  			if err := m.SignerInfos[len(m.SignerInfos)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 12805  				return err
 12806  			}
 12807  			iNdEx = postIndex
 12808  		case 2:
 12809  			if wireType != 2 {
 12810  				return fmt.Errorf("proto: wrong wireType = %d for field Fee", wireType)
 12811  			}
 12812  			var msglen int
 12813  			for shift := uint(0); ; shift += 7 {
 12814  				if shift >= 64 {
 12815  					return ErrIntOverflowUnknonwnproto
 12816  				}
 12817  				if iNdEx >= l {
 12818  					return io.ErrUnexpectedEOF
 12819  				}
 12820  				b := dAtA[iNdEx]
 12821  				iNdEx++
 12822  				msglen |= int(b&0x7F) << shift
 12823  				if b < 0x80 {
 12824  					break
 12825  				}
 12826  			}
 12827  			if msglen < 0 {
 12828  				return ErrInvalidLengthUnknonwnproto
 12829  			}
 12830  			postIndex := iNdEx + msglen
 12831  			if postIndex < 0 {
 12832  				return ErrInvalidLengthUnknonwnproto
 12833  			}
 12834  			if postIndex > l {
 12835  				return io.ErrUnexpectedEOF
 12836  			}
 12837  			if m.Fee == nil {
 12838  				m.Fee = &tx.Fee{}
 12839  			}
 12840  			if err := m.Fee.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 12841  				return err
 12842  			}
 12843  			iNdEx = postIndex
 12844  		case 3:
 12845  			if wireType != 2 {
 12846  				return fmt.Errorf("proto: wrong wireType = %d for field NewField_3", wireType)
 12847  			}
 12848  			var byteLen int
 12849  			for shift := uint(0); ; shift += 7 {
 12850  				if shift >= 64 {
 12851  					return ErrIntOverflowUnknonwnproto
 12852  				}
 12853  				if iNdEx >= l {
 12854  					return io.ErrUnexpectedEOF
 12855  				}
 12856  				b := dAtA[iNdEx]
 12857  				iNdEx++
 12858  				byteLen |= int(b&0x7F) << shift
 12859  				if b < 0x80 {
 12860  					break
 12861  				}
 12862  			}
 12863  			if byteLen < 0 {
 12864  				return ErrInvalidLengthUnknonwnproto
 12865  			}
 12866  			postIndex := iNdEx + byteLen
 12867  			if postIndex < 0 {
 12868  				return ErrInvalidLengthUnknonwnproto
 12869  			}
 12870  			if postIndex > l {
 12871  				return io.ErrUnexpectedEOF
 12872  			}
 12873  			m.NewField_3 = append(m.NewField_3[:0], dAtA[iNdEx:postIndex]...)
 12874  			if m.NewField_3 == nil {
 12875  				m.NewField_3 = []byte{}
 12876  			}
 12877  			iNdEx = postIndex
 12878  		case 1024:
 12879  			if wireType != 2 {
 12880  				return fmt.Errorf("proto: wrong wireType = %d for field NewField_1024", wireType)
 12881  			}
 12882  			var byteLen int
 12883  			for shift := uint(0); ; shift += 7 {
 12884  				if shift >= 64 {
 12885  					return ErrIntOverflowUnknonwnproto
 12886  				}
 12887  				if iNdEx >= l {
 12888  					return io.ErrUnexpectedEOF
 12889  				}
 12890  				b := dAtA[iNdEx]
 12891  				iNdEx++
 12892  				byteLen |= int(b&0x7F) << shift
 12893  				if b < 0x80 {
 12894  					break
 12895  				}
 12896  			}
 12897  			if byteLen < 0 {
 12898  				return ErrInvalidLengthUnknonwnproto
 12899  			}
 12900  			postIndex := iNdEx + byteLen
 12901  			if postIndex < 0 {
 12902  				return ErrInvalidLengthUnknonwnproto
 12903  			}
 12904  			if postIndex > l {
 12905  				return io.ErrUnexpectedEOF
 12906  			}
 12907  			m.NewField_1024 = append(m.NewField_1024[:0], dAtA[iNdEx:postIndex]...)
 12908  			if m.NewField_1024 == nil {
 12909  				m.NewField_1024 = []byte{}
 12910  			}
 12911  			iNdEx = postIndex
 12912  		default:
 12913  			iNdEx = preIndex
 12914  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
 12915  			if err != nil {
 12916  				return err
 12917  			}
 12918  			if (skippy < 0) || (iNdEx+skippy) < 0 {
 12919  				return ErrInvalidLengthUnknonwnproto
 12920  			}
 12921  			if (iNdEx + skippy) > l {
 12922  				return io.ErrUnexpectedEOF
 12923  			}
 12924  			iNdEx += skippy
 12925  		}
 12926  	}
 12927  
 12928  	if iNdEx > l {
 12929  		return io.ErrUnexpectedEOF
 12930  	}
 12931  	return nil
 12932  }
 12933  func (m *TestRepeatedUints) Unmarshal(dAtA []byte) error {
 12934  	l := len(dAtA)
 12935  	iNdEx := 0
 12936  	for iNdEx < l {
 12937  		preIndex := iNdEx
 12938  		var wire uint64
 12939  		for shift := uint(0); ; shift += 7 {
 12940  			if shift >= 64 {
 12941  				return ErrIntOverflowUnknonwnproto
 12942  			}
 12943  			if iNdEx >= l {
 12944  				return io.ErrUnexpectedEOF
 12945  			}
 12946  			b := dAtA[iNdEx]
 12947  			iNdEx++
 12948  			wire |= uint64(b&0x7F) << shift
 12949  			if b < 0x80 {
 12950  				break
 12951  			}
 12952  		}
 12953  		fieldNum := int32(wire >> 3)
 12954  		wireType := int(wire & 0x7)
 12955  		if wireType == 4 {
 12956  			return fmt.Errorf("proto: TestRepeatedUints: wiretype end group for non-group")
 12957  		}
 12958  		if fieldNum <= 0 {
 12959  			return fmt.Errorf("proto: TestRepeatedUints: illegal tag %d (wire type %d)", fieldNum, wire)
 12960  		}
 12961  		switch fieldNum {
 12962  		case 1:
 12963  			if wireType == 0 {
 12964  				var v uint64
 12965  				for shift := uint(0); ; shift += 7 {
 12966  					if shift >= 64 {
 12967  						return ErrIntOverflowUnknonwnproto
 12968  					}
 12969  					if iNdEx >= l {
 12970  						return io.ErrUnexpectedEOF
 12971  					}
 12972  					b := dAtA[iNdEx]
 12973  					iNdEx++
 12974  					v |= uint64(b&0x7F) << shift
 12975  					if b < 0x80 {
 12976  						break
 12977  					}
 12978  				}
 12979  				m.Nums = append(m.Nums, v)
 12980  			} else if wireType == 2 {
 12981  				var packedLen int
 12982  				for shift := uint(0); ; shift += 7 {
 12983  					if shift >= 64 {
 12984  						return ErrIntOverflowUnknonwnproto
 12985  					}
 12986  					if iNdEx >= l {
 12987  						return io.ErrUnexpectedEOF
 12988  					}
 12989  					b := dAtA[iNdEx]
 12990  					iNdEx++
 12991  					packedLen |= int(b&0x7F) << shift
 12992  					if b < 0x80 {
 12993  						break
 12994  					}
 12995  				}
 12996  				if packedLen < 0 {
 12997  					return ErrInvalidLengthUnknonwnproto
 12998  				}
 12999  				postIndex := iNdEx + packedLen
 13000  				if postIndex < 0 {
 13001  					return ErrInvalidLengthUnknonwnproto
 13002  				}
 13003  				if postIndex > l {
 13004  					return io.ErrUnexpectedEOF
 13005  				}
 13006  				var elementCount int
 13007  				var count int
 13008  				for _, integer := range dAtA[iNdEx:postIndex] {
 13009  					if integer < 128 {
 13010  						count++
 13011  					}
 13012  				}
 13013  				elementCount = count
 13014  				if elementCount != 0 && len(m.Nums) == 0 {
 13015  					m.Nums = make([]uint64, 0, elementCount)
 13016  				}
 13017  				for iNdEx < postIndex {
 13018  					var v uint64
 13019  					for shift := uint(0); ; shift += 7 {
 13020  						if shift >= 64 {
 13021  							return ErrIntOverflowUnknonwnproto
 13022  						}
 13023  						if iNdEx >= l {
 13024  							return io.ErrUnexpectedEOF
 13025  						}
 13026  						b := dAtA[iNdEx]
 13027  						iNdEx++
 13028  						v |= uint64(b&0x7F) << shift
 13029  						if b < 0x80 {
 13030  							break
 13031  						}
 13032  					}
 13033  					m.Nums = append(m.Nums, v)
 13034  				}
 13035  			} else {
 13036  				return fmt.Errorf("proto: wrong wireType = %d for field Nums", wireType)
 13037  			}
 13038  		default:
 13039  			iNdEx = preIndex
 13040  			skippy, err := skipUnknonwnproto(dAtA[iNdEx:])
 13041  			if err != nil {
 13042  				return err
 13043  			}
 13044  			if (skippy < 0) || (iNdEx+skippy) < 0 {
 13045  				return ErrInvalidLengthUnknonwnproto
 13046  			}
 13047  			if (iNdEx + skippy) > l {
 13048  				return io.ErrUnexpectedEOF
 13049  			}
 13050  			iNdEx += skippy
 13051  		}
 13052  	}
 13053  
 13054  	if iNdEx > l {
 13055  		return io.ErrUnexpectedEOF
 13056  	}
 13057  	return nil
 13058  }
 13059  func skipUnknonwnproto(dAtA []byte) (n int, err error) {
 13060  	l := len(dAtA)
 13061  	iNdEx := 0
 13062  	depth := 0
 13063  	for iNdEx < l {
 13064  		var wire uint64
 13065  		for shift := uint(0); ; shift += 7 {
 13066  			if shift >= 64 {
 13067  				return 0, ErrIntOverflowUnknonwnproto
 13068  			}
 13069  			if iNdEx >= l {
 13070  				return 0, io.ErrUnexpectedEOF
 13071  			}
 13072  			b := dAtA[iNdEx]
 13073  			iNdEx++
 13074  			wire |= (uint64(b) & 0x7F) << shift
 13075  			if b < 0x80 {
 13076  				break
 13077  			}
 13078  		}
 13079  		wireType := int(wire & 0x7)
 13080  		switch wireType {
 13081  		case 0:
 13082  			for shift := uint(0); ; shift += 7 {
 13083  				if shift >= 64 {
 13084  					return 0, ErrIntOverflowUnknonwnproto
 13085  				}
 13086  				if iNdEx >= l {
 13087  					return 0, io.ErrUnexpectedEOF
 13088  				}
 13089  				iNdEx++
 13090  				if dAtA[iNdEx-1] < 0x80 {
 13091  					break
 13092  				}
 13093  			}
 13094  		case 1:
 13095  			iNdEx += 8
 13096  		case 2:
 13097  			var length int
 13098  			for shift := uint(0); ; shift += 7 {
 13099  				if shift >= 64 {
 13100  					return 0, ErrIntOverflowUnknonwnproto
 13101  				}
 13102  				if iNdEx >= l {
 13103  					return 0, io.ErrUnexpectedEOF
 13104  				}
 13105  				b := dAtA[iNdEx]
 13106  				iNdEx++
 13107  				length |= (int(b) & 0x7F) << shift
 13108  				if b < 0x80 {
 13109  					break
 13110  				}
 13111  			}
 13112  			if length < 0 {
 13113  				return 0, ErrInvalidLengthUnknonwnproto
 13114  			}
 13115  			iNdEx += length
 13116  		case 3:
 13117  			depth++
 13118  		case 4:
 13119  			if depth == 0 {
 13120  				return 0, ErrUnexpectedEndOfGroupUnknonwnproto
 13121  			}
 13122  			depth--
 13123  		case 5:
 13124  			iNdEx += 4
 13125  		default:
 13126  			return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
 13127  		}
 13128  		if iNdEx < 0 {
 13129  			return 0, ErrInvalidLengthUnknonwnproto
 13130  		}
 13131  		if depth == 0 {
 13132  			return iNdEx, nil
 13133  		}
 13134  	}
 13135  	return 0, io.ErrUnexpectedEOF
 13136  }
 13137  
 13138  var (
 13139  	ErrInvalidLengthUnknonwnproto        = fmt.Errorf("proto: negative length found during unmarshaling")
 13140  	ErrIntOverflowUnknonwnproto          = fmt.Errorf("proto: integer overflow")
 13141  	ErrUnexpectedEndOfGroupUnknonwnproto = fmt.Errorf("proto: unexpected end of group")
 13142  )