github.com/patricebensoussan/go/codec@v1.2.99/mammoth2_codecgen_generated_test.go (about)

     1  //go:build go1.6 && ((codecgen && !codec.notfastpath && !codec.notmammoth) || (generated && !codec.notfastpath && !codec.notmammoth))
     2  // +build go1.6
     3  // +build codecgen,!codec.notfastpath,!codec.notmammoth generated,!codec.notfastpath,!codec.notmammoth
     4  
     5  // Code generated by codecgen - DO NOT EDIT.
     6  
     7  package codec
     8  
     9  import (
    10  	"errors"
    11  	"runtime"
    12  	"strconv"
    13  )
    14  
    15  const (
    16  	// ----- content types ----
    17  	codecSelferCcUTF819781 = 1
    18  	codecSelferCcRAW19781  = 255
    19  	// ----- value types used ----
    20  	codecSelferValueTypeArray19781     = 10
    21  	codecSelferValueTypeMap19781       = 9
    22  	codecSelferValueTypeString19781    = 6
    23  	codecSelferValueTypeInt19781       = 2
    24  	codecSelferValueTypeUint19781      = 3
    25  	codecSelferValueTypeFloat19781     = 4
    26  	codecSelferValueTypeNil19781       = 1
    27  	codecSelferBitsize19781            = uint8(32 << (^uint(0) >> 63))
    28  	codecSelferDecContainerLenNil19781 = -2147483648
    29  )
    30  
    31  var (
    32  	errCodecSelferOnlyMapOrArrayEncodeToStruct19781 = errors.New(`only encoded map or array can be decoded into a struct`)
    33  )
    34  
    35  type codecSelfer19781 struct{}
    36  
    37  func codecSelfer19781False() bool { return false }
    38  func codecSelfer19781True() bool  { return true }
    39  
    40  func init() {
    41  	if GenVersion != 25 {
    42  		_, file, _, _ := runtime.Caller(0)
    43  		ver := strconv.FormatInt(int64(GenVersion), 10)
    44  		panic(errors.New("codecgen version mismatch: current: 25, need " + ver + ". Re-generate file: " + file))
    45  	}
    46  }
    47  
    48  func (TestMammoth2) codecSelferViaCodecgen() {}
    49  func (x *TestMammoth2) CodecEncodeSelf(e *Encoder) {
    50  	var h codecSelfer19781
    51  	z, r := GenHelper().Encoder(e)
    52  	_, _, _ = h, z, r
    53  	if z.EncBasicHandle().CheckCircularRef {
    54  		z.EncEncode(x)
    55  		return
    56  	}
    57  	if x == nil {
    58  		r.EncodeNil()
    59  	} else {
    60  		yy2arr2 := z.EncBasicHandle().StructToArray
    61  		_ = yy2arr2
    62  		const yyr2 bool = false // struct tag has 'toArray'
    63  		var yyn4 bool = x.FptrIntf == nil
    64  		var yyn6 bool = x.FptrString == nil
    65  		var yyn8 bool = x.FptrBytes == nil
    66  		var yyn10 bool = x.FptrFloat32 == nil
    67  		var yyn12 bool = x.FptrFloat64 == nil
    68  		var yyn14 bool = x.FptrUint == nil
    69  		var yyn16 bool = x.FptrUint8 == nil
    70  		var yyn18 bool = x.FptrUint16 == nil
    71  		var yyn20 bool = x.FptrUint32 == nil
    72  		var yyn22 bool = x.FptrUint64 == nil
    73  		var yyn24 bool = x.FptrUintptr == nil
    74  		var yyn26 bool = x.FptrInt == nil
    75  		var yyn28 bool = x.FptrInt8 == nil
    76  		var yyn30 bool = x.FptrInt16 == nil
    77  		var yyn32 bool = x.FptrInt32 == nil
    78  		var yyn34 bool = x.FptrInt64 == nil
    79  		var yyn36 bool = x.FptrBool == nil
    80  		var yyn38 bool = x.FptrSliceIntf == nil
    81  		var yyn40 bool = x.FptrSliceString == nil
    82  		var yyn42 bool = x.FptrSliceBytes == nil
    83  		var yyn44 bool = x.FptrSliceFloat32 == nil
    84  		var yyn46 bool = x.FptrSliceFloat64 == nil
    85  		var yyn48 bool = x.FptrSliceUint8 == nil
    86  		var yyn50 bool = x.FptrSliceUint64 == nil
    87  		var yyn52 bool = x.FptrSliceInt == nil
    88  		var yyn54 bool = x.FptrSliceInt32 == nil
    89  		var yyn56 bool = x.FptrSliceInt64 == nil
    90  		var yyn58 bool = x.FptrSliceBool == nil
    91  		var yyn60 bool = x.FptrMapStringIntf == nil
    92  		var yyn62 bool = x.FptrMapStringString == nil
    93  		var yyn64 bool = x.FptrMapStringBytes == nil
    94  		var yyn66 bool = x.FptrMapStringUint8 == nil
    95  		var yyn68 bool = x.FptrMapStringUint64 == nil
    96  		var yyn70 bool = x.FptrMapStringInt == nil
    97  		var yyn72 bool = x.FptrMapStringInt32 == nil
    98  		var yyn74 bool = x.FptrMapStringFloat64 == nil
    99  		var yyn76 bool = x.FptrMapStringBool == nil
   100  		var yyn78 bool = x.FptrMapUint8Intf == nil
   101  		var yyn80 bool = x.FptrMapUint8String == nil
   102  		var yyn82 bool = x.FptrMapUint8Bytes == nil
   103  		var yyn84 bool = x.FptrMapUint8Uint8 == nil
   104  		var yyn86 bool = x.FptrMapUint8Uint64 == nil
   105  		var yyn88 bool = x.FptrMapUint8Int == nil
   106  		var yyn90 bool = x.FptrMapUint8Int32 == nil
   107  		var yyn92 bool = x.FptrMapUint8Float64 == nil
   108  		var yyn94 bool = x.FptrMapUint8Bool == nil
   109  		var yyn96 bool = x.FptrMapUint64Intf == nil
   110  		var yyn98 bool = x.FptrMapUint64String == nil
   111  		var yyn100 bool = x.FptrMapUint64Bytes == nil
   112  		var yyn102 bool = x.FptrMapUint64Uint8 == nil
   113  		var yyn104 bool = x.FptrMapUint64Uint64 == nil
   114  		var yyn106 bool = x.FptrMapUint64Int == nil
   115  		var yyn108 bool = x.FptrMapUint64Int32 == nil
   116  		var yyn110 bool = x.FptrMapUint64Float64 == nil
   117  		var yyn112 bool = x.FptrMapUint64Bool == nil
   118  		var yyn114 bool = x.FptrMapIntIntf == nil
   119  		var yyn116 bool = x.FptrMapIntString == nil
   120  		var yyn118 bool = x.FptrMapIntBytes == nil
   121  		var yyn120 bool = x.FptrMapIntUint8 == nil
   122  		var yyn122 bool = x.FptrMapIntUint64 == nil
   123  		var yyn124 bool = x.FptrMapIntInt == nil
   124  		var yyn126 bool = x.FptrMapIntInt32 == nil
   125  		var yyn128 bool = x.FptrMapIntFloat64 == nil
   126  		var yyn130 bool = x.FptrMapIntBool == nil
   127  		var yyn132 bool = x.FptrMapInt32Intf == nil
   128  		var yyn134 bool = x.FptrMapInt32String == nil
   129  		var yyn136 bool = x.FptrMapInt32Bytes == nil
   130  		var yyn138 bool = x.FptrMapInt32Uint8 == nil
   131  		var yyn140 bool = x.FptrMapInt32Uint64 == nil
   132  		var yyn142 bool = x.FptrMapInt32Int == nil
   133  		var yyn144 bool = x.FptrMapInt32Int32 == nil
   134  		var yyn146 bool = x.FptrMapInt32Float64 == nil
   135  		var yyn148 bool = x.FptrMapInt32Bool == nil
   136  		if yyr2 || yy2arr2 {
   137  			z.EncWriteArrayStart(146)
   138  			z.EncWriteArrayElem()
   139  			z.EncFallback(x.FIntf)
   140  			if yyn4 {
   141  				z.EncWriteArrayElem()
   142  				r.EncodeNil()
   143  			} else {
   144  				z.EncWriteArrayElem()
   145  				yy150 := *x.FptrIntf
   146  				z.EncFallback(yy150)
   147  			}
   148  			z.EncWriteArrayElem()
   149  			r.EncodeString(string(x.FString))
   150  			if yyn6 {
   151  				z.EncWriteArrayElem()
   152  				r.EncodeNil()
   153  			} else {
   154  				z.EncWriteArrayElem()
   155  				yy153 := *x.FptrString
   156  				r.EncodeString(string(yy153))
   157  			}
   158  			z.EncWriteArrayElem()
   159  			if x.FBytes == nil {
   160  				r.EncodeNil()
   161  			} else {
   162  				r.EncodeStringBytesRaw([]byte(x.FBytes))
   163  			} // end block: if x.FBytes slice == nil
   164  			if yyn8 {
   165  				z.EncWriteArrayElem()
   166  				r.EncodeNil()
   167  			} else {
   168  				z.EncWriteArrayElem()
   169  				yy156 := *x.FptrBytes
   170  				if yy156 == nil {
   171  					r.EncodeNil()
   172  				} else {
   173  					r.EncodeStringBytesRaw([]byte(yy156))
   174  				} // end block: if yy156 slice == nil
   175  			}
   176  			z.EncWriteArrayElem()
   177  			r.EncodeFloat32(float32(x.FFloat32))
   178  			if yyn10 {
   179  				z.EncWriteArrayElem()
   180  				r.EncodeNil()
   181  			} else {
   182  				z.EncWriteArrayElem()
   183  				yy159 := *x.FptrFloat32
   184  				r.EncodeFloat32(float32(yy159))
   185  			}
   186  			z.EncWriteArrayElem()
   187  			r.EncodeFloat64(float64(x.FFloat64))
   188  			if yyn12 {
   189  				z.EncWriteArrayElem()
   190  				r.EncodeNil()
   191  			} else {
   192  				z.EncWriteArrayElem()
   193  				yy162 := *x.FptrFloat64
   194  				r.EncodeFloat64(float64(yy162))
   195  			}
   196  			z.EncWriteArrayElem()
   197  			r.EncodeUint(uint64(x.FUint))
   198  			if yyn14 {
   199  				z.EncWriteArrayElem()
   200  				r.EncodeNil()
   201  			} else {
   202  				z.EncWriteArrayElem()
   203  				yy165 := *x.FptrUint
   204  				r.EncodeUint(uint64(yy165))
   205  			}
   206  			z.EncWriteArrayElem()
   207  			r.EncodeUint(uint64(x.FUint8))
   208  			if yyn16 {
   209  				z.EncWriteArrayElem()
   210  				r.EncodeNil()
   211  			} else {
   212  				z.EncWriteArrayElem()
   213  				yy168 := *x.FptrUint8
   214  				r.EncodeUint(uint64(yy168))
   215  			}
   216  			z.EncWriteArrayElem()
   217  			r.EncodeUint(uint64(x.FUint16))
   218  			if yyn18 {
   219  				z.EncWriteArrayElem()
   220  				r.EncodeNil()
   221  			} else {
   222  				z.EncWriteArrayElem()
   223  				yy171 := *x.FptrUint16
   224  				r.EncodeUint(uint64(yy171))
   225  			}
   226  			z.EncWriteArrayElem()
   227  			r.EncodeUint(uint64(x.FUint32))
   228  			if yyn20 {
   229  				z.EncWriteArrayElem()
   230  				r.EncodeNil()
   231  			} else {
   232  				z.EncWriteArrayElem()
   233  				yy174 := *x.FptrUint32
   234  				r.EncodeUint(uint64(yy174))
   235  			}
   236  			z.EncWriteArrayElem()
   237  			r.EncodeUint(uint64(x.FUint64))
   238  			if yyn22 {
   239  				z.EncWriteArrayElem()
   240  				r.EncodeNil()
   241  			} else {
   242  				z.EncWriteArrayElem()
   243  				yy177 := *x.FptrUint64
   244  				r.EncodeUint(uint64(yy177))
   245  			}
   246  			z.EncWriteArrayElem()
   247  			r.EncodeUint(uint64(x.FUintptr))
   248  			if yyn24 {
   249  				z.EncWriteArrayElem()
   250  				r.EncodeNil()
   251  			} else {
   252  				z.EncWriteArrayElem()
   253  				yy180 := *x.FptrUintptr
   254  				r.EncodeUint(uint64(yy180))
   255  			}
   256  			z.EncWriteArrayElem()
   257  			r.EncodeInt(int64(x.FInt))
   258  			if yyn26 {
   259  				z.EncWriteArrayElem()
   260  				r.EncodeNil()
   261  			} else {
   262  				z.EncWriteArrayElem()
   263  				yy183 := *x.FptrInt
   264  				r.EncodeInt(int64(yy183))
   265  			}
   266  			z.EncWriteArrayElem()
   267  			r.EncodeInt(int64(x.FInt8))
   268  			if yyn28 {
   269  				z.EncWriteArrayElem()
   270  				r.EncodeNil()
   271  			} else {
   272  				z.EncWriteArrayElem()
   273  				yy186 := *x.FptrInt8
   274  				r.EncodeInt(int64(yy186))
   275  			}
   276  			z.EncWriteArrayElem()
   277  			r.EncodeInt(int64(x.FInt16))
   278  			if yyn30 {
   279  				z.EncWriteArrayElem()
   280  				r.EncodeNil()
   281  			} else {
   282  				z.EncWriteArrayElem()
   283  				yy189 := *x.FptrInt16
   284  				r.EncodeInt(int64(yy189))
   285  			}
   286  			z.EncWriteArrayElem()
   287  			r.EncodeInt(int64(x.FInt32))
   288  			if yyn32 {
   289  				z.EncWriteArrayElem()
   290  				r.EncodeNil()
   291  			} else {
   292  				z.EncWriteArrayElem()
   293  				yy192 := *x.FptrInt32
   294  				r.EncodeInt(int64(yy192))
   295  			}
   296  			z.EncWriteArrayElem()
   297  			r.EncodeInt(int64(x.FInt64))
   298  			if yyn34 {
   299  				z.EncWriteArrayElem()
   300  				r.EncodeNil()
   301  			} else {
   302  				z.EncWriteArrayElem()
   303  				yy195 := *x.FptrInt64
   304  				r.EncodeInt(int64(yy195))
   305  			}
   306  			z.EncWriteArrayElem()
   307  			r.EncodeBool(bool(x.FBool))
   308  			if yyn36 {
   309  				z.EncWriteArrayElem()
   310  				r.EncodeNil()
   311  			} else {
   312  				z.EncWriteArrayElem()
   313  				yy198 := *x.FptrBool
   314  				r.EncodeBool(bool(yy198))
   315  			}
   316  			z.EncWriteArrayElem()
   317  			if x.FSliceIntf == nil {
   318  				r.EncodeNil()
   319  			} else {
   320  				z.F.EncSliceIntfV(x.FSliceIntf, e)
   321  			} // end block: if x.FSliceIntf slice == nil
   322  			if yyn38 {
   323  				z.EncWriteArrayElem()
   324  				r.EncodeNil()
   325  			} else {
   326  				z.EncWriteArrayElem()
   327  				yy201 := *x.FptrSliceIntf
   328  				if yy201 == nil {
   329  					r.EncodeNil()
   330  				} else {
   331  					z.F.EncSliceIntfV(yy201, e)
   332  				} // end block: if yy201 slice == nil
   333  			}
   334  			z.EncWriteArrayElem()
   335  			if x.FSliceString == nil {
   336  				r.EncodeNil()
   337  			} else {
   338  				z.F.EncSliceStringV(x.FSliceString, e)
   339  			} // end block: if x.FSliceString slice == nil
   340  			if yyn40 {
   341  				z.EncWriteArrayElem()
   342  				r.EncodeNil()
   343  			} else {
   344  				z.EncWriteArrayElem()
   345  				yy204 := *x.FptrSliceString
   346  				if yy204 == nil {
   347  					r.EncodeNil()
   348  				} else {
   349  					z.F.EncSliceStringV(yy204, e)
   350  				} // end block: if yy204 slice == nil
   351  			}
   352  			z.EncWriteArrayElem()
   353  			if x.FSliceBytes == nil {
   354  				r.EncodeNil()
   355  			} else {
   356  				z.F.EncSliceBytesV(x.FSliceBytes, e)
   357  			} // end block: if x.FSliceBytes slice == nil
   358  			if yyn42 {
   359  				z.EncWriteArrayElem()
   360  				r.EncodeNil()
   361  			} else {
   362  				z.EncWriteArrayElem()
   363  				yy207 := *x.FptrSliceBytes
   364  				if yy207 == nil {
   365  					r.EncodeNil()
   366  				} else {
   367  					z.F.EncSliceBytesV(yy207, e)
   368  				} // end block: if yy207 slice == nil
   369  			}
   370  			z.EncWriteArrayElem()
   371  			if x.FSliceFloat32 == nil {
   372  				r.EncodeNil()
   373  			} else {
   374  				z.F.EncSliceFloat32V(x.FSliceFloat32, e)
   375  			} // end block: if x.FSliceFloat32 slice == nil
   376  			if yyn44 {
   377  				z.EncWriteArrayElem()
   378  				r.EncodeNil()
   379  			} else {
   380  				z.EncWriteArrayElem()
   381  				yy210 := *x.FptrSliceFloat32
   382  				if yy210 == nil {
   383  					r.EncodeNil()
   384  				} else {
   385  					z.F.EncSliceFloat32V(yy210, e)
   386  				} // end block: if yy210 slice == nil
   387  			}
   388  			z.EncWriteArrayElem()
   389  			if x.FSliceFloat64 == nil {
   390  				r.EncodeNil()
   391  			} else {
   392  				z.F.EncSliceFloat64V(x.FSliceFloat64, e)
   393  			} // end block: if x.FSliceFloat64 slice == nil
   394  			if yyn46 {
   395  				z.EncWriteArrayElem()
   396  				r.EncodeNil()
   397  			} else {
   398  				z.EncWriteArrayElem()
   399  				yy213 := *x.FptrSliceFloat64
   400  				if yy213 == nil {
   401  					r.EncodeNil()
   402  				} else {
   403  					z.F.EncSliceFloat64V(yy213, e)
   404  				} // end block: if yy213 slice == nil
   405  			}
   406  			z.EncWriteArrayElem()
   407  			if x.FSliceUint8 == nil {
   408  				r.EncodeNil()
   409  			} else {
   410  				r.EncodeStringBytesRaw([]byte(x.FSliceUint8))
   411  			} // end block: if x.FSliceUint8 slice == nil
   412  			if yyn48 {
   413  				z.EncWriteArrayElem()
   414  				r.EncodeNil()
   415  			} else {
   416  				z.EncWriteArrayElem()
   417  				yy216 := *x.FptrSliceUint8
   418  				if yy216 == nil {
   419  					r.EncodeNil()
   420  				} else {
   421  					r.EncodeStringBytesRaw([]byte(yy216))
   422  				} // end block: if yy216 slice == nil
   423  			}
   424  			z.EncWriteArrayElem()
   425  			if x.FSliceUint64 == nil {
   426  				r.EncodeNil()
   427  			} else {
   428  				z.F.EncSliceUint64V(x.FSliceUint64, e)
   429  			} // end block: if x.FSliceUint64 slice == nil
   430  			if yyn50 {
   431  				z.EncWriteArrayElem()
   432  				r.EncodeNil()
   433  			} else {
   434  				z.EncWriteArrayElem()
   435  				yy219 := *x.FptrSliceUint64
   436  				if yy219 == nil {
   437  					r.EncodeNil()
   438  				} else {
   439  					z.F.EncSliceUint64V(yy219, e)
   440  				} // end block: if yy219 slice == nil
   441  			}
   442  			z.EncWriteArrayElem()
   443  			if x.FSliceInt == nil {
   444  				r.EncodeNil()
   445  			} else {
   446  				z.F.EncSliceIntV(x.FSliceInt, e)
   447  			} // end block: if x.FSliceInt slice == nil
   448  			if yyn52 {
   449  				z.EncWriteArrayElem()
   450  				r.EncodeNil()
   451  			} else {
   452  				z.EncWriteArrayElem()
   453  				yy222 := *x.FptrSliceInt
   454  				if yy222 == nil {
   455  					r.EncodeNil()
   456  				} else {
   457  					z.F.EncSliceIntV(yy222, e)
   458  				} // end block: if yy222 slice == nil
   459  			}
   460  			z.EncWriteArrayElem()
   461  			if x.FSliceInt32 == nil {
   462  				r.EncodeNil()
   463  			} else {
   464  				z.F.EncSliceInt32V(x.FSliceInt32, e)
   465  			} // end block: if x.FSliceInt32 slice == nil
   466  			if yyn54 {
   467  				z.EncWriteArrayElem()
   468  				r.EncodeNil()
   469  			} else {
   470  				z.EncWriteArrayElem()
   471  				yy225 := *x.FptrSliceInt32
   472  				if yy225 == nil {
   473  					r.EncodeNil()
   474  				} else {
   475  					z.F.EncSliceInt32V(yy225, e)
   476  				} // end block: if yy225 slice == nil
   477  			}
   478  			z.EncWriteArrayElem()
   479  			if x.FSliceInt64 == nil {
   480  				r.EncodeNil()
   481  			} else {
   482  				z.F.EncSliceInt64V(x.FSliceInt64, e)
   483  			} // end block: if x.FSliceInt64 slice == nil
   484  			if yyn56 {
   485  				z.EncWriteArrayElem()
   486  				r.EncodeNil()
   487  			} else {
   488  				z.EncWriteArrayElem()
   489  				yy228 := *x.FptrSliceInt64
   490  				if yy228 == nil {
   491  					r.EncodeNil()
   492  				} else {
   493  					z.F.EncSliceInt64V(yy228, e)
   494  				} // end block: if yy228 slice == nil
   495  			}
   496  			z.EncWriteArrayElem()
   497  			if x.FSliceBool == nil {
   498  				r.EncodeNil()
   499  			} else {
   500  				z.F.EncSliceBoolV(x.FSliceBool, e)
   501  			} // end block: if x.FSliceBool slice == nil
   502  			if yyn58 {
   503  				z.EncWriteArrayElem()
   504  				r.EncodeNil()
   505  			} else {
   506  				z.EncWriteArrayElem()
   507  				yy231 := *x.FptrSliceBool
   508  				if yy231 == nil {
   509  					r.EncodeNil()
   510  				} else {
   511  					z.F.EncSliceBoolV(yy231, e)
   512  				} // end block: if yy231 slice == nil
   513  			}
   514  			z.EncWriteArrayElem()
   515  			if x.FMapStringIntf == nil {
   516  				r.EncodeNil()
   517  			} else {
   518  				z.F.EncMapStringIntfV(x.FMapStringIntf, e)
   519  			} // end block: if x.FMapStringIntf map == nil
   520  			if yyn60 {
   521  				z.EncWriteArrayElem()
   522  				r.EncodeNil()
   523  			} else {
   524  				z.EncWriteArrayElem()
   525  				yy234 := *x.FptrMapStringIntf
   526  				if yy234 == nil {
   527  					r.EncodeNil()
   528  				} else {
   529  					z.F.EncMapStringIntfV(yy234, e)
   530  				} // end block: if yy234 map == nil
   531  			}
   532  			z.EncWriteArrayElem()
   533  			if x.FMapStringString == nil {
   534  				r.EncodeNil()
   535  			} else {
   536  				z.F.EncMapStringStringV(x.FMapStringString, e)
   537  			} // end block: if x.FMapStringString map == nil
   538  			if yyn62 {
   539  				z.EncWriteArrayElem()
   540  				r.EncodeNil()
   541  			} else {
   542  				z.EncWriteArrayElem()
   543  				yy237 := *x.FptrMapStringString
   544  				if yy237 == nil {
   545  					r.EncodeNil()
   546  				} else {
   547  					z.F.EncMapStringStringV(yy237, e)
   548  				} // end block: if yy237 map == nil
   549  			}
   550  			z.EncWriteArrayElem()
   551  			if x.FMapStringBytes == nil {
   552  				r.EncodeNil()
   553  			} else {
   554  				z.F.EncMapStringBytesV(x.FMapStringBytes, e)
   555  			} // end block: if x.FMapStringBytes map == nil
   556  			if yyn64 {
   557  				z.EncWriteArrayElem()
   558  				r.EncodeNil()
   559  			} else {
   560  				z.EncWriteArrayElem()
   561  				yy240 := *x.FptrMapStringBytes
   562  				if yy240 == nil {
   563  					r.EncodeNil()
   564  				} else {
   565  					z.F.EncMapStringBytesV(yy240, e)
   566  				} // end block: if yy240 map == nil
   567  			}
   568  			z.EncWriteArrayElem()
   569  			if x.FMapStringUint8 == nil {
   570  				r.EncodeNil()
   571  			} else {
   572  				z.F.EncMapStringUint8V(x.FMapStringUint8, e)
   573  			} // end block: if x.FMapStringUint8 map == nil
   574  			if yyn66 {
   575  				z.EncWriteArrayElem()
   576  				r.EncodeNil()
   577  			} else {
   578  				z.EncWriteArrayElem()
   579  				yy243 := *x.FptrMapStringUint8
   580  				if yy243 == nil {
   581  					r.EncodeNil()
   582  				} else {
   583  					z.F.EncMapStringUint8V(yy243, e)
   584  				} // end block: if yy243 map == nil
   585  			}
   586  			z.EncWriteArrayElem()
   587  			if x.FMapStringUint64 == nil {
   588  				r.EncodeNil()
   589  			} else {
   590  				z.F.EncMapStringUint64V(x.FMapStringUint64, e)
   591  			} // end block: if x.FMapStringUint64 map == nil
   592  			if yyn68 {
   593  				z.EncWriteArrayElem()
   594  				r.EncodeNil()
   595  			} else {
   596  				z.EncWriteArrayElem()
   597  				yy246 := *x.FptrMapStringUint64
   598  				if yy246 == nil {
   599  					r.EncodeNil()
   600  				} else {
   601  					z.F.EncMapStringUint64V(yy246, e)
   602  				} // end block: if yy246 map == nil
   603  			}
   604  			z.EncWriteArrayElem()
   605  			if x.FMapStringInt == nil {
   606  				r.EncodeNil()
   607  			} else {
   608  				z.F.EncMapStringIntV(x.FMapStringInt, e)
   609  			} // end block: if x.FMapStringInt map == nil
   610  			if yyn70 {
   611  				z.EncWriteArrayElem()
   612  				r.EncodeNil()
   613  			} else {
   614  				z.EncWriteArrayElem()
   615  				yy249 := *x.FptrMapStringInt
   616  				if yy249 == nil {
   617  					r.EncodeNil()
   618  				} else {
   619  					z.F.EncMapStringIntV(yy249, e)
   620  				} // end block: if yy249 map == nil
   621  			}
   622  			z.EncWriteArrayElem()
   623  			if x.FMapStringInt32 == nil {
   624  				r.EncodeNil()
   625  			} else {
   626  				z.F.EncMapStringInt32V(x.FMapStringInt32, e)
   627  			} // end block: if x.FMapStringInt32 map == nil
   628  			if yyn72 {
   629  				z.EncWriteArrayElem()
   630  				r.EncodeNil()
   631  			} else {
   632  				z.EncWriteArrayElem()
   633  				yy252 := *x.FptrMapStringInt32
   634  				if yy252 == nil {
   635  					r.EncodeNil()
   636  				} else {
   637  					z.F.EncMapStringInt32V(yy252, e)
   638  				} // end block: if yy252 map == nil
   639  			}
   640  			z.EncWriteArrayElem()
   641  			if x.FMapStringFloat64 == nil {
   642  				r.EncodeNil()
   643  			} else {
   644  				z.F.EncMapStringFloat64V(x.FMapStringFloat64, e)
   645  			} // end block: if x.FMapStringFloat64 map == nil
   646  			if yyn74 {
   647  				z.EncWriteArrayElem()
   648  				r.EncodeNil()
   649  			} else {
   650  				z.EncWriteArrayElem()
   651  				yy255 := *x.FptrMapStringFloat64
   652  				if yy255 == nil {
   653  					r.EncodeNil()
   654  				} else {
   655  					z.F.EncMapStringFloat64V(yy255, e)
   656  				} // end block: if yy255 map == nil
   657  			}
   658  			z.EncWriteArrayElem()
   659  			if x.FMapStringBool == nil {
   660  				r.EncodeNil()
   661  			} else {
   662  				z.F.EncMapStringBoolV(x.FMapStringBool, e)
   663  			} // end block: if x.FMapStringBool map == nil
   664  			if yyn76 {
   665  				z.EncWriteArrayElem()
   666  				r.EncodeNil()
   667  			} else {
   668  				z.EncWriteArrayElem()
   669  				yy258 := *x.FptrMapStringBool
   670  				if yy258 == nil {
   671  					r.EncodeNil()
   672  				} else {
   673  					z.F.EncMapStringBoolV(yy258, e)
   674  				} // end block: if yy258 map == nil
   675  			}
   676  			z.EncWriteArrayElem()
   677  			if x.FMapUint8Intf == nil {
   678  				r.EncodeNil()
   679  			} else {
   680  				z.F.EncMapUint8IntfV(x.FMapUint8Intf, e)
   681  			} // end block: if x.FMapUint8Intf map == nil
   682  			if yyn78 {
   683  				z.EncWriteArrayElem()
   684  				r.EncodeNil()
   685  			} else {
   686  				z.EncWriteArrayElem()
   687  				yy261 := *x.FptrMapUint8Intf
   688  				if yy261 == nil {
   689  					r.EncodeNil()
   690  				} else {
   691  					z.F.EncMapUint8IntfV(yy261, e)
   692  				} // end block: if yy261 map == nil
   693  			}
   694  			z.EncWriteArrayElem()
   695  			if x.FMapUint8String == nil {
   696  				r.EncodeNil()
   697  			} else {
   698  				z.F.EncMapUint8StringV(x.FMapUint8String, e)
   699  			} // end block: if x.FMapUint8String map == nil
   700  			if yyn80 {
   701  				z.EncWriteArrayElem()
   702  				r.EncodeNil()
   703  			} else {
   704  				z.EncWriteArrayElem()
   705  				yy264 := *x.FptrMapUint8String
   706  				if yy264 == nil {
   707  					r.EncodeNil()
   708  				} else {
   709  					z.F.EncMapUint8StringV(yy264, e)
   710  				} // end block: if yy264 map == nil
   711  			}
   712  			z.EncWriteArrayElem()
   713  			if x.FMapUint8Bytes == nil {
   714  				r.EncodeNil()
   715  			} else {
   716  				z.F.EncMapUint8BytesV(x.FMapUint8Bytes, e)
   717  			} // end block: if x.FMapUint8Bytes map == nil
   718  			if yyn82 {
   719  				z.EncWriteArrayElem()
   720  				r.EncodeNil()
   721  			} else {
   722  				z.EncWriteArrayElem()
   723  				yy267 := *x.FptrMapUint8Bytes
   724  				if yy267 == nil {
   725  					r.EncodeNil()
   726  				} else {
   727  					z.F.EncMapUint8BytesV(yy267, e)
   728  				} // end block: if yy267 map == nil
   729  			}
   730  			z.EncWriteArrayElem()
   731  			if x.FMapUint8Uint8 == nil {
   732  				r.EncodeNil()
   733  			} else {
   734  				z.F.EncMapUint8Uint8V(x.FMapUint8Uint8, e)
   735  			} // end block: if x.FMapUint8Uint8 map == nil
   736  			if yyn84 {
   737  				z.EncWriteArrayElem()
   738  				r.EncodeNil()
   739  			} else {
   740  				z.EncWriteArrayElem()
   741  				yy270 := *x.FptrMapUint8Uint8
   742  				if yy270 == nil {
   743  					r.EncodeNil()
   744  				} else {
   745  					z.F.EncMapUint8Uint8V(yy270, e)
   746  				} // end block: if yy270 map == nil
   747  			}
   748  			z.EncWriteArrayElem()
   749  			if x.FMapUint8Uint64 == nil {
   750  				r.EncodeNil()
   751  			} else {
   752  				z.F.EncMapUint8Uint64V(x.FMapUint8Uint64, e)
   753  			} // end block: if x.FMapUint8Uint64 map == nil
   754  			if yyn86 {
   755  				z.EncWriteArrayElem()
   756  				r.EncodeNil()
   757  			} else {
   758  				z.EncWriteArrayElem()
   759  				yy273 := *x.FptrMapUint8Uint64
   760  				if yy273 == nil {
   761  					r.EncodeNil()
   762  				} else {
   763  					z.F.EncMapUint8Uint64V(yy273, e)
   764  				} // end block: if yy273 map == nil
   765  			}
   766  			z.EncWriteArrayElem()
   767  			if x.FMapUint8Int == nil {
   768  				r.EncodeNil()
   769  			} else {
   770  				z.F.EncMapUint8IntV(x.FMapUint8Int, e)
   771  			} // end block: if x.FMapUint8Int map == nil
   772  			if yyn88 {
   773  				z.EncWriteArrayElem()
   774  				r.EncodeNil()
   775  			} else {
   776  				z.EncWriteArrayElem()
   777  				yy276 := *x.FptrMapUint8Int
   778  				if yy276 == nil {
   779  					r.EncodeNil()
   780  				} else {
   781  					z.F.EncMapUint8IntV(yy276, e)
   782  				} // end block: if yy276 map == nil
   783  			}
   784  			z.EncWriteArrayElem()
   785  			if x.FMapUint8Int32 == nil {
   786  				r.EncodeNil()
   787  			} else {
   788  				z.F.EncMapUint8Int32V(x.FMapUint8Int32, e)
   789  			} // end block: if x.FMapUint8Int32 map == nil
   790  			if yyn90 {
   791  				z.EncWriteArrayElem()
   792  				r.EncodeNil()
   793  			} else {
   794  				z.EncWriteArrayElem()
   795  				yy279 := *x.FptrMapUint8Int32
   796  				if yy279 == nil {
   797  					r.EncodeNil()
   798  				} else {
   799  					z.F.EncMapUint8Int32V(yy279, e)
   800  				} // end block: if yy279 map == nil
   801  			}
   802  			z.EncWriteArrayElem()
   803  			if x.FMapUint8Float64 == nil {
   804  				r.EncodeNil()
   805  			} else {
   806  				z.F.EncMapUint8Float64V(x.FMapUint8Float64, e)
   807  			} // end block: if x.FMapUint8Float64 map == nil
   808  			if yyn92 {
   809  				z.EncWriteArrayElem()
   810  				r.EncodeNil()
   811  			} else {
   812  				z.EncWriteArrayElem()
   813  				yy282 := *x.FptrMapUint8Float64
   814  				if yy282 == nil {
   815  					r.EncodeNil()
   816  				} else {
   817  					z.F.EncMapUint8Float64V(yy282, e)
   818  				} // end block: if yy282 map == nil
   819  			}
   820  			z.EncWriteArrayElem()
   821  			if x.FMapUint8Bool == nil {
   822  				r.EncodeNil()
   823  			} else {
   824  				z.F.EncMapUint8BoolV(x.FMapUint8Bool, e)
   825  			} // end block: if x.FMapUint8Bool map == nil
   826  			if yyn94 {
   827  				z.EncWriteArrayElem()
   828  				r.EncodeNil()
   829  			} else {
   830  				z.EncWriteArrayElem()
   831  				yy285 := *x.FptrMapUint8Bool
   832  				if yy285 == nil {
   833  					r.EncodeNil()
   834  				} else {
   835  					z.F.EncMapUint8BoolV(yy285, e)
   836  				} // end block: if yy285 map == nil
   837  			}
   838  			z.EncWriteArrayElem()
   839  			if x.FMapUint64Intf == nil {
   840  				r.EncodeNil()
   841  			} else {
   842  				z.F.EncMapUint64IntfV(x.FMapUint64Intf, e)
   843  			} // end block: if x.FMapUint64Intf map == nil
   844  			if yyn96 {
   845  				z.EncWriteArrayElem()
   846  				r.EncodeNil()
   847  			} else {
   848  				z.EncWriteArrayElem()
   849  				yy288 := *x.FptrMapUint64Intf
   850  				if yy288 == nil {
   851  					r.EncodeNil()
   852  				} else {
   853  					z.F.EncMapUint64IntfV(yy288, e)
   854  				} // end block: if yy288 map == nil
   855  			}
   856  			z.EncWriteArrayElem()
   857  			if x.FMapUint64String == nil {
   858  				r.EncodeNil()
   859  			} else {
   860  				z.F.EncMapUint64StringV(x.FMapUint64String, e)
   861  			} // end block: if x.FMapUint64String map == nil
   862  			if yyn98 {
   863  				z.EncWriteArrayElem()
   864  				r.EncodeNil()
   865  			} else {
   866  				z.EncWriteArrayElem()
   867  				yy291 := *x.FptrMapUint64String
   868  				if yy291 == nil {
   869  					r.EncodeNil()
   870  				} else {
   871  					z.F.EncMapUint64StringV(yy291, e)
   872  				} // end block: if yy291 map == nil
   873  			}
   874  			z.EncWriteArrayElem()
   875  			if x.FMapUint64Bytes == nil {
   876  				r.EncodeNil()
   877  			} else {
   878  				z.F.EncMapUint64BytesV(x.FMapUint64Bytes, e)
   879  			} // end block: if x.FMapUint64Bytes map == nil
   880  			if yyn100 {
   881  				z.EncWriteArrayElem()
   882  				r.EncodeNil()
   883  			} else {
   884  				z.EncWriteArrayElem()
   885  				yy294 := *x.FptrMapUint64Bytes
   886  				if yy294 == nil {
   887  					r.EncodeNil()
   888  				} else {
   889  					z.F.EncMapUint64BytesV(yy294, e)
   890  				} // end block: if yy294 map == nil
   891  			}
   892  			z.EncWriteArrayElem()
   893  			if x.FMapUint64Uint8 == nil {
   894  				r.EncodeNil()
   895  			} else {
   896  				z.F.EncMapUint64Uint8V(x.FMapUint64Uint8, e)
   897  			} // end block: if x.FMapUint64Uint8 map == nil
   898  			if yyn102 {
   899  				z.EncWriteArrayElem()
   900  				r.EncodeNil()
   901  			} else {
   902  				z.EncWriteArrayElem()
   903  				yy297 := *x.FptrMapUint64Uint8
   904  				if yy297 == nil {
   905  					r.EncodeNil()
   906  				} else {
   907  					z.F.EncMapUint64Uint8V(yy297, e)
   908  				} // end block: if yy297 map == nil
   909  			}
   910  			z.EncWriteArrayElem()
   911  			if x.FMapUint64Uint64 == nil {
   912  				r.EncodeNil()
   913  			} else {
   914  				z.F.EncMapUint64Uint64V(x.FMapUint64Uint64, e)
   915  			} // end block: if x.FMapUint64Uint64 map == nil
   916  			if yyn104 {
   917  				z.EncWriteArrayElem()
   918  				r.EncodeNil()
   919  			} else {
   920  				z.EncWriteArrayElem()
   921  				yy300 := *x.FptrMapUint64Uint64
   922  				if yy300 == nil {
   923  					r.EncodeNil()
   924  				} else {
   925  					z.F.EncMapUint64Uint64V(yy300, e)
   926  				} // end block: if yy300 map == nil
   927  			}
   928  			z.EncWriteArrayElem()
   929  			if x.FMapUint64Int == nil {
   930  				r.EncodeNil()
   931  			} else {
   932  				z.F.EncMapUint64IntV(x.FMapUint64Int, e)
   933  			} // end block: if x.FMapUint64Int map == nil
   934  			if yyn106 {
   935  				z.EncWriteArrayElem()
   936  				r.EncodeNil()
   937  			} else {
   938  				z.EncWriteArrayElem()
   939  				yy303 := *x.FptrMapUint64Int
   940  				if yy303 == nil {
   941  					r.EncodeNil()
   942  				} else {
   943  					z.F.EncMapUint64IntV(yy303, e)
   944  				} // end block: if yy303 map == nil
   945  			}
   946  			z.EncWriteArrayElem()
   947  			if x.FMapUint64Int32 == nil {
   948  				r.EncodeNil()
   949  			} else {
   950  				z.F.EncMapUint64Int32V(x.FMapUint64Int32, e)
   951  			} // end block: if x.FMapUint64Int32 map == nil
   952  			if yyn108 {
   953  				z.EncWriteArrayElem()
   954  				r.EncodeNil()
   955  			} else {
   956  				z.EncWriteArrayElem()
   957  				yy306 := *x.FptrMapUint64Int32
   958  				if yy306 == nil {
   959  					r.EncodeNil()
   960  				} else {
   961  					z.F.EncMapUint64Int32V(yy306, e)
   962  				} // end block: if yy306 map == nil
   963  			}
   964  			z.EncWriteArrayElem()
   965  			if x.FMapUint64Float64 == nil {
   966  				r.EncodeNil()
   967  			} else {
   968  				z.F.EncMapUint64Float64V(x.FMapUint64Float64, e)
   969  			} // end block: if x.FMapUint64Float64 map == nil
   970  			if yyn110 {
   971  				z.EncWriteArrayElem()
   972  				r.EncodeNil()
   973  			} else {
   974  				z.EncWriteArrayElem()
   975  				yy309 := *x.FptrMapUint64Float64
   976  				if yy309 == nil {
   977  					r.EncodeNil()
   978  				} else {
   979  					z.F.EncMapUint64Float64V(yy309, e)
   980  				} // end block: if yy309 map == nil
   981  			}
   982  			z.EncWriteArrayElem()
   983  			if x.FMapUint64Bool == nil {
   984  				r.EncodeNil()
   985  			} else {
   986  				z.F.EncMapUint64BoolV(x.FMapUint64Bool, e)
   987  			} // end block: if x.FMapUint64Bool map == nil
   988  			if yyn112 {
   989  				z.EncWriteArrayElem()
   990  				r.EncodeNil()
   991  			} else {
   992  				z.EncWriteArrayElem()
   993  				yy312 := *x.FptrMapUint64Bool
   994  				if yy312 == nil {
   995  					r.EncodeNil()
   996  				} else {
   997  					z.F.EncMapUint64BoolV(yy312, e)
   998  				} // end block: if yy312 map == nil
   999  			}
  1000  			z.EncWriteArrayElem()
  1001  			if x.FMapIntIntf == nil {
  1002  				r.EncodeNil()
  1003  			} else {
  1004  				z.F.EncMapIntIntfV(x.FMapIntIntf, e)
  1005  			} // end block: if x.FMapIntIntf map == nil
  1006  			if yyn114 {
  1007  				z.EncWriteArrayElem()
  1008  				r.EncodeNil()
  1009  			} else {
  1010  				z.EncWriteArrayElem()
  1011  				yy315 := *x.FptrMapIntIntf
  1012  				if yy315 == nil {
  1013  					r.EncodeNil()
  1014  				} else {
  1015  					z.F.EncMapIntIntfV(yy315, e)
  1016  				} // end block: if yy315 map == nil
  1017  			}
  1018  			z.EncWriteArrayElem()
  1019  			if x.FMapIntString == nil {
  1020  				r.EncodeNil()
  1021  			} else {
  1022  				z.F.EncMapIntStringV(x.FMapIntString, e)
  1023  			} // end block: if x.FMapIntString map == nil
  1024  			if yyn116 {
  1025  				z.EncWriteArrayElem()
  1026  				r.EncodeNil()
  1027  			} else {
  1028  				z.EncWriteArrayElem()
  1029  				yy318 := *x.FptrMapIntString
  1030  				if yy318 == nil {
  1031  					r.EncodeNil()
  1032  				} else {
  1033  					z.F.EncMapIntStringV(yy318, e)
  1034  				} // end block: if yy318 map == nil
  1035  			}
  1036  			z.EncWriteArrayElem()
  1037  			if x.FMapIntBytes == nil {
  1038  				r.EncodeNil()
  1039  			} else {
  1040  				z.F.EncMapIntBytesV(x.FMapIntBytes, e)
  1041  			} // end block: if x.FMapIntBytes map == nil
  1042  			if yyn118 {
  1043  				z.EncWriteArrayElem()
  1044  				r.EncodeNil()
  1045  			} else {
  1046  				z.EncWriteArrayElem()
  1047  				yy321 := *x.FptrMapIntBytes
  1048  				if yy321 == nil {
  1049  					r.EncodeNil()
  1050  				} else {
  1051  					z.F.EncMapIntBytesV(yy321, e)
  1052  				} // end block: if yy321 map == nil
  1053  			}
  1054  			z.EncWriteArrayElem()
  1055  			if x.FMapIntUint8 == nil {
  1056  				r.EncodeNil()
  1057  			} else {
  1058  				z.F.EncMapIntUint8V(x.FMapIntUint8, e)
  1059  			} // end block: if x.FMapIntUint8 map == nil
  1060  			if yyn120 {
  1061  				z.EncWriteArrayElem()
  1062  				r.EncodeNil()
  1063  			} else {
  1064  				z.EncWriteArrayElem()
  1065  				yy324 := *x.FptrMapIntUint8
  1066  				if yy324 == nil {
  1067  					r.EncodeNil()
  1068  				} else {
  1069  					z.F.EncMapIntUint8V(yy324, e)
  1070  				} // end block: if yy324 map == nil
  1071  			}
  1072  			z.EncWriteArrayElem()
  1073  			if x.FMapIntUint64 == nil {
  1074  				r.EncodeNil()
  1075  			} else {
  1076  				z.F.EncMapIntUint64V(x.FMapIntUint64, e)
  1077  			} // end block: if x.FMapIntUint64 map == nil
  1078  			if yyn122 {
  1079  				z.EncWriteArrayElem()
  1080  				r.EncodeNil()
  1081  			} else {
  1082  				z.EncWriteArrayElem()
  1083  				yy327 := *x.FptrMapIntUint64
  1084  				if yy327 == nil {
  1085  					r.EncodeNil()
  1086  				} else {
  1087  					z.F.EncMapIntUint64V(yy327, e)
  1088  				} // end block: if yy327 map == nil
  1089  			}
  1090  			z.EncWriteArrayElem()
  1091  			if x.FMapIntInt == nil {
  1092  				r.EncodeNil()
  1093  			} else {
  1094  				z.F.EncMapIntIntV(x.FMapIntInt, e)
  1095  			} // end block: if x.FMapIntInt map == nil
  1096  			if yyn124 {
  1097  				z.EncWriteArrayElem()
  1098  				r.EncodeNil()
  1099  			} else {
  1100  				z.EncWriteArrayElem()
  1101  				yy330 := *x.FptrMapIntInt
  1102  				if yy330 == nil {
  1103  					r.EncodeNil()
  1104  				} else {
  1105  					z.F.EncMapIntIntV(yy330, e)
  1106  				} // end block: if yy330 map == nil
  1107  			}
  1108  			z.EncWriteArrayElem()
  1109  			if x.FMapIntInt32 == nil {
  1110  				r.EncodeNil()
  1111  			} else {
  1112  				z.F.EncMapIntInt32V(x.FMapIntInt32, e)
  1113  			} // end block: if x.FMapIntInt32 map == nil
  1114  			if yyn126 {
  1115  				z.EncWriteArrayElem()
  1116  				r.EncodeNil()
  1117  			} else {
  1118  				z.EncWriteArrayElem()
  1119  				yy333 := *x.FptrMapIntInt32
  1120  				if yy333 == nil {
  1121  					r.EncodeNil()
  1122  				} else {
  1123  					z.F.EncMapIntInt32V(yy333, e)
  1124  				} // end block: if yy333 map == nil
  1125  			}
  1126  			z.EncWriteArrayElem()
  1127  			if x.FMapIntFloat64 == nil {
  1128  				r.EncodeNil()
  1129  			} else {
  1130  				z.F.EncMapIntFloat64V(x.FMapIntFloat64, e)
  1131  			} // end block: if x.FMapIntFloat64 map == nil
  1132  			if yyn128 {
  1133  				z.EncWriteArrayElem()
  1134  				r.EncodeNil()
  1135  			} else {
  1136  				z.EncWriteArrayElem()
  1137  				yy336 := *x.FptrMapIntFloat64
  1138  				if yy336 == nil {
  1139  					r.EncodeNil()
  1140  				} else {
  1141  					z.F.EncMapIntFloat64V(yy336, e)
  1142  				} // end block: if yy336 map == nil
  1143  			}
  1144  			z.EncWriteArrayElem()
  1145  			if x.FMapIntBool == nil {
  1146  				r.EncodeNil()
  1147  			} else {
  1148  				z.F.EncMapIntBoolV(x.FMapIntBool, e)
  1149  			} // end block: if x.FMapIntBool map == nil
  1150  			if yyn130 {
  1151  				z.EncWriteArrayElem()
  1152  				r.EncodeNil()
  1153  			} else {
  1154  				z.EncWriteArrayElem()
  1155  				yy339 := *x.FptrMapIntBool
  1156  				if yy339 == nil {
  1157  					r.EncodeNil()
  1158  				} else {
  1159  					z.F.EncMapIntBoolV(yy339, e)
  1160  				} // end block: if yy339 map == nil
  1161  			}
  1162  			z.EncWriteArrayElem()
  1163  			if x.FMapInt32Intf == nil {
  1164  				r.EncodeNil()
  1165  			} else {
  1166  				z.F.EncMapInt32IntfV(x.FMapInt32Intf, e)
  1167  			} // end block: if x.FMapInt32Intf map == nil
  1168  			if yyn132 {
  1169  				z.EncWriteArrayElem()
  1170  				r.EncodeNil()
  1171  			} else {
  1172  				z.EncWriteArrayElem()
  1173  				yy342 := *x.FptrMapInt32Intf
  1174  				if yy342 == nil {
  1175  					r.EncodeNil()
  1176  				} else {
  1177  					z.F.EncMapInt32IntfV(yy342, e)
  1178  				} // end block: if yy342 map == nil
  1179  			}
  1180  			z.EncWriteArrayElem()
  1181  			if x.FMapInt32String == nil {
  1182  				r.EncodeNil()
  1183  			} else {
  1184  				z.F.EncMapInt32StringV(x.FMapInt32String, e)
  1185  			} // end block: if x.FMapInt32String map == nil
  1186  			if yyn134 {
  1187  				z.EncWriteArrayElem()
  1188  				r.EncodeNil()
  1189  			} else {
  1190  				z.EncWriteArrayElem()
  1191  				yy345 := *x.FptrMapInt32String
  1192  				if yy345 == nil {
  1193  					r.EncodeNil()
  1194  				} else {
  1195  					z.F.EncMapInt32StringV(yy345, e)
  1196  				} // end block: if yy345 map == nil
  1197  			}
  1198  			z.EncWriteArrayElem()
  1199  			if x.FMapInt32Bytes == nil {
  1200  				r.EncodeNil()
  1201  			} else {
  1202  				z.F.EncMapInt32BytesV(x.FMapInt32Bytes, e)
  1203  			} // end block: if x.FMapInt32Bytes map == nil
  1204  			if yyn136 {
  1205  				z.EncWriteArrayElem()
  1206  				r.EncodeNil()
  1207  			} else {
  1208  				z.EncWriteArrayElem()
  1209  				yy348 := *x.FptrMapInt32Bytes
  1210  				if yy348 == nil {
  1211  					r.EncodeNil()
  1212  				} else {
  1213  					z.F.EncMapInt32BytesV(yy348, e)
  1214  				} // end block: if yy348 map == nil
  1215  			}
  1216  			z.EncWriteArrayElem()
  1217  			if x.FMapInt32Uint8 == nil {
  1218  				r.EncodeNil()
  1219  			} else {
  1220  				z.F.EncMapInt32Uint8V(x.FMapInt32Uint8, e)
  1221  			} // end block: if x.FMapInt32Uint8 map == nil
  1222  			if yyn138 {
  1223  				z.EncWriteArrayElem()
  1224  				r.EncodeNil()
  1225  			} else {
  1226  				z.EncWriteArrayElem()
  1227  				yy351 := *x.FptrMapInt32Uint8
  1228  				if yy351 == nil {
  1229  					r.EncodeNil()
  1230  				} else {
  1231  					z.F.EncMapInt32Uint8V(yy351, e)
  1232  				} // end block: if yy351 map == nil
  1233  			}
  1234  			z.EncWriteArrayElem()
  1235  			if x.FMapInt32Uint64 == nil {
  1236  				r.EncodeNil()
  1237  			} else {
  1238  				z.F.EncMapInt32Uint64V(x.FMapInt32Uint64, e)
  1239  			} // end block: if x.FMapInt32Uint64 map == nil
  1240  			if yyn140 {
  1241  				z.EncWriteArrayElem()
  1242  				r.EncodeNil()
  1243  			} else {
  1244  				z.EncWriteArrayElem()
  1245  				yy354 := *x.FptrMapInt32Uint64
  1246  				if yy354 == nil {
  1247  					r.EncodeNil()
  1248  				} else {
  1249  					z.F.EncMapInt32Uint64V(yy354, e)
  1250  				} // end block: if yy354 map == nil
  1251  			}
  1252  			z.EncWriteArrayElem()
  1253  			if x.FMapInt32Int == nil {
  1254  				r.EncodeNil()
  1255  			} else {
  1256  				z.F.EncMapInt32IntV(x.FMapInt32Int, e)
  1257  			} // end block: if x.FMapInt32Int map == nil
  1258  			if yyn142 {
  1259  				z.EncWriteArrayElem()
  1260  				r.EncodeNil()
  1261  			} else {
  1262  				z.EncWriteArrayElem()
  1263  				yy357 := *x.FptrMapInt32Int
  1264  				if yy357 == nil {
  1265  					r.EncodeNil()
  1266  				} else {
  1267  					z.F.EncMapInt32IntV(yy357, e)
  1268  				} // end block: if yy357 map == nil
  1269  			}
  1270  			z.EncWriteArrayElem()
  1271  			if x.FMapInt32Int32 == nil {
  1272  				r.EncodeNil()
  1273  			} else {
  1274  				z.F.EncMapInt32Int32V(x.FMapInt32Int32, e)
  1275  			} // end block: if x.FMapInt32Int32 map == nil
  1276  			if yyn144 {
  1277  				z.EncWriteArrayElem()
  1278  				r.EncodeNil()
  1279  			} else {
  1280  				z.EncWriteArrayElem()
  1281  				yy360 := *x.FptrMapInt32Int32
  1282  				if yy360 == nil {
  1283  					r.EncodeNil()
  1284  				} else {
  1285  					z.F.EncMapInt32Int32V(yy360, e)
  1286  				} // end block: if yy360 map == nil
  1287  			}
  1288  			z.EncWriteArrayElem()
  1289  			if x.FMapInt32Float64 == nil {
  1290  				r.EncodeNil()
  1291  			} else {
  1292  				z.F.EncMapInt32Float64V(x.FMapInt32Float64, e)
  1293  			} // end block: if x.FMapInt32Float64 map == nil
  1294  			if yyn146 {
  1295  				z.EncWriteArrayElem()
  1296  				r.EncodeNil()
  1297  			} else {
  1298  				z.EncWriteArrayElem()
  1299  				yy363 := *x.FptrMapInt32Float64
  1300  				if yy363 == nil {
  1301  					r.EncodeNil()
  1302  				} else {
  1303  					z.F.EncMapInt32Float64V(yy363, e)
  1304  				} // end block: if yy363 map == nil
  1305  			}
  1306  			z.EncWriteArrayElem()
  1307  			if x.FMapInt32Bool == nil {
  1308  				r.EncodeNil()
  1309  			} else {
  1310  				z.F.EncMapInt32BoolV(x.FMapInt32Bool, e)
  1311  			} // end block: if x.FMapInt32Bool map == nil
  1312  			if yyn148 {
  1313  				z.EncWriteArrayElem()
  1314  				r.EncodeNil()
  1315  			} else {
  1316  				z.EncWriteArrayElem()
  1317  				yy366 := *x.FptrMapInt32Bool
  1318  				if yy366 == nil {
  1319  					r.EncodeNil()
  1320  				} else {
  1321  					z.F.EncMapInt32BoolV(yy366, e)
  1322  				} // end block: if yy366 map == nil
  1323  			}
  1324  			z.EncWriteArrayEnd()
  1325  		} else {
  1326  			z.EncWriteMapStart(146)
  1327  			z.EncWriteMapElemKey()
  1328  			if z.IsJSONHandle() {
  1329  				z.WriteStr("\"FIntf\"")
  1330  			} else {
  1331  				r.EncodeString(`FIntf`)
  1332  			}
  1333  			z.EncWriteMapElemValue()
  1334  			z.EncFallback(x.FIntf)
  1335  			z.EncWriteMapElemKey()
  1336  			if z.IsJSONHandle() {
  1337  				z.WriteStr("\"FptrIntf\"")
  1338  			} else {
  1339  				r.EncodeString(`FptrIntf`)
  1340  			}
  1341  			z.EncWriteMapElemValue()
  1342  			if yyn4 {
  1343  				r.EncodeNil()
  1344  			} else {
  1345  				yy369 := *x.FptrIntf
  1346  				z.EncFallback(yy369)
  1347  			}
  1348  			z.EncWriteMapElemKey()
  1349  			if z.IsJSONHandle() {
  1350  				z.WriteStr("\"FString\"")
  1351  			} else {
  1352  				r.EncodeString(`FString`)
  1353  			}
  1354  			z.EncWriteMapElemValue()
  1355  			r.EncodeString(string(x.FString))
  1356  			z.EncWriteMapElemKey()
  1357  			if z.IsJSONHandle() {
  1358  				z.WriteStr("\"FptrString\"")
  1359  			} else {
  1360  				r.EncodeString(`FptrString`)
  1361  			}
  1362  			z.EncWriteMapElemValue()
  1363  			if yyn6 {
  1364  				r.EncodeNil()
  1365  			} else {
  1366  				yy372 := *x.FptrString
  1367  				r.EncodeString(string(yy372))
  1368  			}
  1369  			z.EncWriteMapElemKey()
  1370  			if z.IsJSONHandle() {
  1371  				z.WriteStr("\"FBytes\"")
  1372  			} else {
  1373  				r.EncodeString(`FBytes`)
  1374  			}
  1375  			z.EncWriteMapElemValue()
  1376  			if x.FBytes == nil {
  1377  				r.EncodeNil()
  1378  			} else {
  1379  				r.EncodeStringBytesRaw([]byte(x.FBytes))
  1380  			} // end block: if x.FBytes slice == nil
  1381  			z.EncWriteMapElemKey()
  1382  			if z.IsJSONHandle() {
  1383  				z.WriteStr("\"FptrBytes\"")
  1384  			} else {
  1385  				r.EncodeString(`FptrBytes`)
  1386  			}
  1387  			z.EncWriteMapElemValue()
  1388  			if yyn8 {
  1389  				r.EncodeNil()
  1390  			} else {
  1391  				yy375 := *x.FptrBytes
  1392  				if yy375 == nil {
  1393  					r.EncodeNil()
  1394  				} else {
  1395  					r.EncodeStringBytesRaw([]byte(yy375))
  1396  				} // end block: if yy375 slice == nil
  1397  			}
  1398  			z.EncWriteMapElemKey()
  1399  			if z.IsJSONHandle() {
  1400  				z.WriteStr("\"FFloat32\"")
  1401  			} else {
  1402  				r.EncodeString(`FFloat32`)
  1403  			}
  1404  			z.EncWriteMapElemValue()
  1405  			r.EncodeFloat32(float32(x.FFloat32))
  1406  			z.EncWriteMapElemKey()
  1407  			if z.IsJSONHandle() {
  1408  				z.WriteStr("\"FptrFloat32\"")
  1409  			} else {
  1410  				r.EncodeString(`FptrFloat32`)
  1411  			}
  1412  			z.EncWriteMapElemValue()
  1413  			if yyn10 {
  1414  				r.EncodeNil()
  1415  			} else {
  1416  				yy378 := *x.FptrFloat32
  1417  				r.EncodeFloat32(float32(yy378))
  1418  			}
  1419  			z.EncWriteMapElemKey()
  1420  			if z.IsJSONHandle() {
  1421  				z.WriteStr("\"FFloat64\"")
  1422  			} else {
  1423  				r.EncodeString(`FFloat64`)
  1424  			}
  1425  			z.EncWriteMapElemValue()
  1426  			r.EncodeFloat64(float64(x.FFloat64))
  1427  			z.EncWriteMapElemKey()
  1428  			if z.IsJSONHandle() {
  1429  				z.WriteStr("\"FptrFloat64\"")
  1430  			} else {
  1431  				r.EncodeString(`FptrFloat64`)
  1432  			}
  1433  			z.EncWriteMapElemValue()
  1434  			if yyn12 {
  1435  				r.EncodeNil()
  1436  			} else {
  1437  				yy381 := *x.FptrFloat64
  1438  				r.EncodeFloat64(float64(yy381))
  1439  			}
  1440  			z.EncWriteMapElemKey()
  1441  			if z.IsJSONHandle() {
  1442  				z.WriteStr("\"FUint\"")
  1443  			} else {
  1444  				r.EncodeString(`FUint`)
  1445  			}
  1446  			z.EncWriteMapElemValue()
  1447  			r.EncodeUint(uint64(x.FUint))
  1448  			z.EncWriteMapElemKey()
  1449  			if z.IsJSONHandle() {
  1450  				z.WriteStr("\"FptrUint\"")
  1451  			} else {
  1452  				r.EncodeString(`FptrUint`)
  1453  			}
  1454  			z.EncWriteMapElemValue()
  1455  			if yyn14 {
  1456  				r.EncodeNil()
  1457  			} else {
  1458  				yy384 := *x.FptrUint
  1459  				r.EncodeUint(uint64(yy384))
  1460  			}
  1461  			z.EncWriteMapElemKey()
  1462  			if z.IsJSONHandle() {
  1463  				z.WriteStr("\"FUint8\"")
  1464  			} else {
  1465  				r.EncodeString(`FUint8`)
  1466  			}
  1467  			z.EncWriteMapElemValue()
  1468  			r.EncodeUint(uint64(x.FUint8))
  1469  			z.EncWriteMapElemKey()
  1470  			if z.IsJSONHandle() {
  1471  				z.WriteStr("\"FptrUint8\"")
  1472  			} else {
  1473  				r.EncodeString(`FptrUint8`)
  1474  			}
  1475  			z.EncWriteMapElemValue()
  1476  			if yyn16 {
  1477  				r.EncodeNil()
  1478  			} else {
  1479  				yy387 := *x.FptrUint8
  1480  				r.EncodeUint(uint64(yy387))
  1481  			}
  1482  			z.EncWriteMapElemKey()
  1483  			if z.IsJSONHandle() {
  1484  				z.WriteStr("\"FUint16\"")
  1485  			} else {
  1486  				r.EncodeString(`FUint16`)
  1487  			}
  1488  			z.EncWriteMapElemValue()
  1489  			r.EncodeUint(uint64(x.FUint16))
  1490  			z.EncWriteMapElemKey()
  1491  			if z.IsJSONHandle() {
  1492  				z.WriteStr("\"FptrUint16\"")
  1493  			} else {
  1494  				r.EncodeString(`FptrUint16`)
  1495  			}
  1496  			z.EncWriteMapElemValue()
  1497  			if yyn18 {
  1498  				r.EncodeNil()
  1499  			} else {
  1500  				yy390 := *x.FptrUint16
  1501  				r.EncodeUint(uint64(yy390))
  1502  			}
  1503  			z.EncWriteMapElemKey()
  1504  			if z.IsJSONHandle() {
  1505  				z.WriteStr("\"FUint32\"")
  1506  			} else {
  1507  				r.EncodeString(`FUint32`)
  1508  			}
  1509  			z.EncWriteMapElemValue()
  1510  			r.EncodeUint(uint64(x.FUint32))
  1511  			z.EncWriteMapElemKey()
  1512  			if z.IsJSONHandle() {
  1513  				z.WriteStr("\"FptrUint32\"")
  1514  			} else {
  1515  				r.EncodeString(`FptrUint32`)
  1516  			}
  1517  			z.EncWriteMapElemValue()
  1518  			if yyn20 {
  1519  				r.EncodeNil()
  1520  			} else {
  1521  				yy393 := *x.FptrUint32
  1522  				r.EncodeUint(uint64(yy393))
  1523  			}
  1524  			z.EncWriteMapElemKey()
  1525  			if z.IsJSONHandle() {
  1526  				z.WriteStr("\"FUint64\"")
  1527  			} else {
  1528  				r.EncodeString(`FUint64`)
  1529  			}
  1530  			z.EncWriteMapElemValue()
  1531  			r.EncodeUint(uint64(x.FUint64))
  1532  			z.EncWriteMapElemKey()
  1533  			if z.IsJSONHandle() {
  1534  				z.WriteStr("\"FptrUint64\"")
  1535  			} else {
  1536  				r.EncodeString(`FptrUint64`)
  1537  			}
  1538  			z.EncWriteMapElemValue()
  1539  			if yyn22 {
  1540  				r.EncodeNil()
  1541  			} else {
  1542  				yy396 := *x.FptrUint64
  1543  				r.EncodeUint(uint64(yy396))
  1544  			}
  1545  			z.EncWriteMapElemKey()
  1546  			if z.IsJSONHandle() {
  1547  				z.WriteStr("\"FUintptr\"")
  1548  			} else {
  1549  				r.EncodeString(`FUintptr`)
  1550  			}
  1551  			z.EncWriteMapElemValue()
  1552  			r.EncodeUint(uint64(x.FUintptr))
  1553  			z.EncWriteMapElemKey()
  1554  			if z.IsJSONHandle() {
  1555  				z.WriteStr("\"FptrUintptr\"")
  1556  			} else {
  1557  				r.EncodeString(`FptrUintptr`)
  1558  			}
  1559  			z.EncWriteMapElemValue()
  1560  			if yyn24 {
  1561  				r.EncodeNil()
  1562  			} else {
  1563  				yy399 := *x.FptrUintptr
  1564  				r.EncodeUint(uint64(yy399))
  1565  			}
  1566  			z.EncWriteMapElemKey()
  1567  			if z.IsJSONHandle() {
  1568  				z.WriteStr("\"FInt\"")
  1569  			} else {
  1570  				r.EncodeString(`FInt`)
  1571  			}
  1572  			z.EncWriteMapElemValue()
  1573  			r.EncodeInt(int64(x.FInt))
  1574  			z.EncWriteMapElemKey()
  1575  			if z.IsJSONHandle() {
  1576  				z.WriteStr("\"FptrInt\"")
  1577  			} else {
  1578  				r.EncodeString(`FptrInt`)
  1579  			}
  1580  			z.EncWriteMapElemValue()
  1581  			if yyn26 {
  1582  				r.EncodeNil()
  1583  			} else {
  1584  				yy402 := *x.FptrInt
  1585  				r.EncodeInt(int64(yy402))
  1586  			}
  1587  			z.EncWriteMapElemKey()
  1588  			if z.IsJSONHandle() {
  1589  				z.WriteStr("\"FInt8\"")
  1590  			} else {
  1591  				r.EncodeString(`FInt8`)
  1592  			}
  1593  			z.EncWriteMapElemValue()
  1594  			r.EncodeInt(int64(x.FInt8))
  1595  			z.EncWriteMapElemKey()
  1596  			if z.IsJSONHandle() {
  1597  				z.WriteStr("\"FptrInt8\"")
  1598  			} else {
  1599  				r.EncodeString(`FptrInt8`)
  1600  			}
  1601  			z.EncWriteMapElemValue()
  1602  			if yyn28 {
  1603  				r.EncodeNil()
  1604  			} else {
  1605  				yy405 := *x.FptrInt8
  1606  				r.EncodeInt(int64(yy405))
  1607  			}
  1608  			z.EncWriteMapElemKey()
  1609  			if z.IsJSONHandle() {
  1610  				z.WriteStr("\"FInt16\"")
  1611  			} else {
  1612  				r.EncodeString(`FInt16`)
  1613  			}
  1614  			z.EncWriteMapElemValue()
  1615  			r.EncodeInt(int64(x.FInt16))
  1616  			z.EncWriteMapElemKey()
  1617  			if z.IsJSONHandle() {
  1618  				z.WriteStr("\"FptrInt16\"")
  1619  			} else {
  1620  				r.EncodeString(`FptrInt16`)
  1621  			}
  1622  			z.EncWriteMapElemValue()
  1623  			if yyn30 {
  1624  				r.EncodeNil()
  1625  			} else {
  1626  				yy408 := *x.FptrInt16
  1627  				r.EncodeInt(int64(yy408))
  1628  			}
  1629  			z.EncWriteMapElemKey()
  1630  			if z.IsJSONHandle() {
  1631  				z.WriteStr("\"FInt32\"")
  1632  			} else {
  1633  				r.EncodeString(`FInt32`)
  1634  			}
  1635  			z.EncWriteMapElemValue()
  1636  			r.EncodeInt(int64(x.FInt32))
  1637  			z.EncWriteMapElemKey()
  1638  			if z.IsJSONHandle() {
  1639  				z.WriteStr("\"FptrInt32\"")
  1640  			} else {
  1641  				r.EncodeString(`FptrInt32`)
  1642  			}
  1643  			z.EncWriteMapElemValue()
  1644  			if yyn32 {
  1645  				r.EncodeNil()
  1646  			} else {
  1647  				yy411 := *x.FptrInt32
  1648  				r.EncodeInt(int64(yy411))
  1649  			}
  1650  			z.EncWriteMapElemKey()
  1651  			if z.IsJSONHandle() {
  1652  				z.WriteStr("\"FInt64\"")
  1653  			} else {
  1654  				r.EncodeString(`FInt64`)
  1655  			}
  1656  			z.EncWriteMapElemValue()
  1657  			r.EncodeInt(int64(x.FInt64))
  1658  			z.EncWriteMapElemKey()
  1659  			if z.IsJSONHandle() {
  1660  				z.WriteStr("\"FptrInt64\"")
  1661  			} else {
  1662  				r.EncodeString(`FptrInt64`)
  1663  			}
  1664  			z.EncWriteMapElemValue()
  1665  			if yyn34 {
  1666  				r.EncodeNil()
  1667  			} else {
  1668  				yy414 := *x.FptrInt64
  1669  				r.EncodeInt(int64(yy414))
  1670  			}
  1671  			z.EncWriteMapElemKey()
  1672  			if z.IsJSONHandle() {
  1673  				z.WriteStr("\"FBool\"")
  1674  			} else {
  1675  				r.EncodeString(`FBool`)
  1676  			}
  1677  			z.EncWriteMapElemValue()
  1678  			r.EncodeBool(bool(x.FBool))
  1679  			z.EncWriteMapElemKey()
  1680  			if z.IsJSONHandle() {
  1681  				z.WriteStr("\"FptrBool\"")
  1682  			} else {
  1683  				r.EncodeString(`FptrBool`)
  1684  			}
  1685  			z.EncWriteMapElemValue()
  1686  			if yyn36 {
  1687  				r.EncodeNil()
  1688  			} else {
  1689  				yy417 := *x.FptrBool
  1690  				r.EncodeBool(bool(yy417))
  1691  			}
  1692  			z.EncWriteMapElemKey()
  1693  			if z.IsJSONHandle() {
  1694  				z.WriteStr("\"FSliceIntf\"")
  1695  			} else {
  1696  				r.EncodeString(`FSliceIntf`)
  1697  			}
  1698  			z.EncWriteMapElemValue()
  1699  			if x.FSliceIntf == nil {
  1700  				r.EncodeNil()
  1701  			} else {
  1702  				z.F.EncSliceIntfV(x.FSliceIntf, e)
  1703  			} // end block: if x.FSliceIntf slice == nil
  1704  			z.EncWriteMapElemKey()
  1705  			if z.IsJSONHandle() {
  1706  				z.WriteStr("\"FptrSliceIntf\"")
  1707  			} else {
  1708  				r.EncodeString(`FptrSliceIntf`)
  1709  			}
  1710  			z.EncWriteMapElemValue()
  1711  			if yyn38 {
  1712  				r.EncodeNil()
  1713  			} else {
  1714  				yy420 := *x.FptrSliceIntf
  1715  				if yy420 == nil {
  1716  					r.EncodeNil()
  1717  				} else {
  1718  					z.F.EncSliceIntfV(yy420, e)
  1719  				} // end block: if yy420 slice == nil
  1720  			}
  1721  			z.EncWriteMapElemKey()
  1722  			if z.IsJSONHandle() {
  1723  				z.WriteStr("\"FSliceString\"")
  1724  			} else {
  1725  				r.EncodeString(`FSliceString`)
  1726  			}
  1727  			z.EncWriteMapElemValue()
  1728  			if x.FSliceString == nil {
  1729  				r.EncodeNil()
  1730  			} else {
  1731  				z.F.EncSliceStringV(x.FSliceString, e)
  1732  			} // end block: if x.FSliceString slice == nil
  1733  			z.EncWriteMapElemKey()
  1734  			if z.IsJSONHandle() {
  1735  				z.WriteStr("\"FptrSliceString\"")
  1736  			} else {
  1737  				r.EncodeString(`FptrSliceString`)
  1738  			}
  1739  			z.EncWriteMapElemValue()
  1740  			if yyn40 {
  1741  				r.EncodeNil()
  1742  			} else {
  1743  				yy423 := *x.FptrSliceString
  1744  				if yy423 == nil {
  1745  					r.EncodeNil()
  1746  				} else {
  1747  					z.F.EncSliceStringV(yy423, e)
  1748  				} // end block: if yy423 slice == nil
  1749  			}
  1750  			z.EncWriteMapElemKey()
  1751  			if z.IsJSONHandle() {
  1752  				z.WriteStr("\"FSliceBytes\"")
  1753  			} else {
  1754  				r.EncodeString(`FSliceBytes`)
  1755  			}
  1756  			z.EncWriteMapElemValue()
  1757  			if x.FSliceBytes == nil {
  1758  				r.EncodeNil()
  1759  			} else {
  1760  				z.F.EncSliceBytesV(x.FSliceBytes, e)
  1761  			} // end block: if x.FSliceBytes slice == nil
  1762  			z.EncWriteMapElemKey()
  1763  			if z.IsJSONHandle() {
  1764  				z.WriteStr("\"FptrSliceBytes\"")
  1765  			} else {
  1766  				r.EncodeString(`FptrSliceBytes`)
  1767  			}
  1768  			z.EncWriteMapElemValue()
  1769  			if yyn42 {
  1770  				r.EncodeNil()
  1771  			} else {
  1772  				yy426 := *x.FptrSliceBytes
  1773  				if yy426 == nil {
  1774  					r.EncodeNil()
  1775  				} else {
  1776  					z.F.EncSliceBytesV(yy426, e)
  1777  				} // end block: if yy426 slice == nil
  1778  			}
  1779  			z.EncWriteMapElemKey()
  1780  			if z.IsJSONHandle() {
  1781  				z.WriteStr("\"FSliceFloat32\"")
  1782  			} else {
  1783  				r.EncodeString(`FSliceFloat32`)
  1784  			}
  1785  			z.EncWriteMapElemValue()
  1786  			if x.FSliceFloat32 == nil {
  1787  				r.EncodeNil()
  1788  			} else {
  1789  				z.F.EncSliceFloat32V(x.FSliceFloat32, e)
  1790  			} // end block: if x.FSliceFloat32 slice == nil
  1791  			z.EncWriteMapElemKey()
  1792  			if z.IsJSONHandle() {
  1793  				z.WriteStr("\"FptrSliceFloat32\"")
  1794  			} else {
  1795  				r.EncodeString(`FptrSliceFloat32`)
  1796  			}
  1797  			z.EncWriteMapElemValue()
  1798  			if yyn44 {
  1799  				r.EncodeNil()
  1800  			} else {
  1801  				yy429 := *x.FptrSliceFloat32
  1802  				if yy429 == nil {
  1803  					r.EncodeNil()
  1804  				} else {
  1805  					z.F.EncSliceFloat32V(yy429, e)
  1806  				} // end block: if yy429 slice == nil
  1807  			}
  1808  			z.EncWriteMapElemKey()
  1809  			if z.IsJSONHandle() {
  1810  				z.WriteStr("\"FSliceFloat64\"")
  1811  			} else {
  1812  				r.EncodeString(`FSliceFloat64`)
  1813  			}
  1814  			z.EncWriteMapElemValue()
  1815  			if x.FSliceFloat64 == nil {
  1816  				r.EncodeNil()
  1817  			} else {
  1818  				z.F.EncSliceFloat64V(x.FSliceFloat64, e)
  1819  			} // end block: if x.FSliceFloat64 slice == nil
  1820  			z.EncWriteMapElemKey()
  1821  			if z.IsJSONHandle() {
  1822  				z.WriteStr("\"FptrSliceFloat64\"")
  1823  			} else {
  1824  				r.EncodeString(`FptrSliceFloat64`)
  1825  			}
  1826  			z.EncWriteMapElemValue()
  1827  			if yyn46 {
  1828  				r.EncodeNil()
  1829  			} else {
  1830  				yy432 := *x.FptrSliceFloat64
  1831  				if yy432 == nil {
  1832  					r.EncodeNil()
  1833  				} else {
  1834  					z.F.EncSliceFloat64V(yy432, e)
  1835  				} // end block: if yy432 slice == nil
  1836  			}
  1837  			z.EncWriteMapElemKey()
  1838  			if z.IsJSONHandle() {
  1839  				z.WriteStr("\"FSliceUint8\"")
  1840  			} else {
  1841  				r.EncodeString(`FSliceUint8`)
  1842  			}
  1843  			z.EncWriteMapElemValue()
  1844  			if x.FSliceUint8 == nil {
  1845  				r.EncodeNil()
  1846  			} else {
  1847  				r.EncodeStringBytesRaw([]byte(x.FSliceUint8))
  1848  			} // end block: if x.FSliceUint8 slice == nil
  1849  			z.EncWriteMapElemKey()
  1850  			if z.IsJSONHandle() {
  1851  				z.WriteStr("\"FptrSliceUint8\"")
  1852  			} else {
  1853  				r.EncodeString(`FptrSliceUint8`)
  1854  			}
  1855  			z.EncWriteMapElemValue()
  1856  			if yyn48 {
  1857  				r.EncodeNil()
  1858  			} else {
  1859  				yy435 := *x.FptrSliceUint8
  1860  				if yy435 == nil {
  1861  					r.EncodeNil()
  1862  				} else {
  1863  					r.EncodeStringBytesRaw([]byte(yy435))
  1864  				} // end block: if yy435 slice == nil
  1865  			}
  1866  			z.EncWriteMapElemKey()
  1867  			if z.IsJSONHandle() {
  1868  				z.WriteStr("\"FSliceUint64\"")
  1869  			} else {
  1870  				r.EncodeString(`FSliceUint64`)
  1871  			}
  1872  			z.EncWriteMapElemValue()
  1873  			if x.FSliceUint64 == nil {
  1874  				r.EncodeNil()
  1875  			} else {
  1876  				z.F.EncSliceUint64V(x.FSliceUint64, e)
  1877  			} // end block: if x.FSliceUint64 slice == nil
  1878  			z.EncWriteMapElemKey()
  1879  			if z.IsJSONHandle() {
  1880  				z.WriteStr("\"FptrSliceUint64\"")
  1881  			} else {
  1882  				r.EncodeString(`FptrSliceUint64`)
  1883  			}
  1884  			z.EncWriteMapElemValue()
  1885  			if yyn50 {
  1886  				r.EncodeNil()
  1887  			} else {
  1888  				yy438 := *x.FptrSliceUint64
  1889  				if yy438 == nil {
  1890  					r.EncodeNil()
  1891  				} else {
  1892  					z.F.EncSliceUint64V(yy438, e)
  1893  				} // end block: if yy438 slice == nil
  1894  			}
  1895  			z.EncWriteMapElemKey()
  1896  			if z.IsJSONHandle() {
  1897  				z.WriteStr("\"FSliceInt\"")
  1898  			} else {
  1899  				r.EncodeString(`FSliceInt`)
  1900  			}
  1901  			z.EncWriteMapElemValue()
  1902  			if x.FSliceInt == nil {
  1903  				r.EncodeNil()
  1904  			} else {
  1905  				z.F.EncSliceIntV(x.FSliceInt, e)
  1906  			} // end block: if x.FSliceInt slice == nil
  1907  			z.EncWriteMapElemKey()
  1908  			if z.IsJSONHandle() {
  1909  				z.WriteStr("\"FptrSliceInt\"")
  1910  			} else {
  1911  				r.EncodeString(`FptrSliceInt`)
  1912  			}
  1913  			z.EncWriteMapElemValue()
  1914  			if yyn52 {
  1915  				r.EncodeNil()
  1916  			} else {
  1917  				yy441 := *x.FptrSliceInt
  1918  				if yy441 == nil {
  1919  					r.EncodeNil()
  1920  				} else {
  1921  					z.F.EncSliceIntV(yy441, e)
  1922  				} // end block: if yy441 slice == nil
  1923  			}
  1924  			z.EncWriteMapElemKey()
  1925  			if z.IsJSONHandle() {
  1926  				z.WriteStr("\"FSliceInt32\"")
  1927  			} else {
  1928  				r.EncodeString(`FSliceInt32`)
  1929  			}
  1930  			z.EncWriteMapElemValue()
  1931  			if x.FSliceInt32 == nil {
  1932  				r.EncodeNil()
  1933  			} else {
  1934  				z.F.EncSliceInt32V(x.FSliceInt32, e)
  1935  			} // end block: if x.FSliceInt32 slice == nil
  1936  			z.EncWriteMapElemKey()
  1937  			if z.IsJSONHandle() {
  1938  				z.WriteStr("\"FptrSliceInt32\"")
  1939  			} else {
  1940  				r.EncodeString(`FptrSliceInt32`)
  1941  			}
  1942  			z.EncWriteMapElemValue()
  1943  			if yyn54 {
  1944  				r.EncodeNil()
  1945  			} else {
  1946  				yy444 := *x.FptrSliceInt32
  1947  				if yy444 == nil {
  1948  					r.EncodeNil()
  1949  				} else {
  1950  					z.F.EncSliceInt32V(yy444, e)
  1951  				} // end block: if yy444 slice == nil
  1952  			}
  1953  			z.EncWriteMapElemKey()
  1954  			if z.IsJSONHandle() {
  1955  				z.WriteStr("\"FSliceInt64\"")
  1956  			} else {
  1957  				r.EncodeString(`FSliceInt64`)
  1958  			}
  1959  			z.EncWriteMapElemValue()
  1960  			if x.FSliceInt64 == nil {
  1961  				r.EncodeNil()
  1962  			} else {
  1963  				z.F.EncSliceInt64V(x.FSliceInt64, e)
  1964  			} // end block: if x.FSliceInt64 slice == nil
  1965  			z.EncWriteMapElemKey()
  1966  			if z.IsJSONHandle() {
  1967  				z.WriteStr("\"FptrSliceInt64\"")
  1968  			} else {
  1969  				r.EncodeString(`FptrSliceInt64`)
  1970  			}
  1971  			z.EncWriteMapElemValue()
  1972  			if yyn56 {
  1973  				r.EncodeNil()
  1974  			} else {
  1975  				yy447 := *x.FptrSliceInt64
  1976  				if yy447 == nil {
  1977  					r.EncodeNil()
  1978  				} else {
  1979  					z.F.EncSliceInt64V(yy447, e)
  1980  				} // end block: if yy447 slice == nil
  1981  			}
  1982  			z.EncWriteMapElemKey()
  1983  			if z.IsJSONHandle() {
  1984  				z.WriteStr("\"FSliceBool\"")
  1985  			} else {
  1986  				r.EncodeString(`FSliceBool`)
  1987  			}
  1988  			z.EncWriteMapElemValue()
  1989  			if x.FSliceBool == nil {
  1990  				r.EncodeNil()
  1991  			} else {
  1992  				z.F.EncSliceBoolV(x.FSliceBool, e)
  1993  			} // end block: if x.FSliceBool slice == nil
  1994  			z.EncWriteMapElemKey()
  1995  			if z.IsJSONHandle() {
  1996  				z.WriteStr("\"FptrSliceBool\"")
  1997  			} else {
  1998  				r.EncodeString(`FptrSliceBool`)
  1999  			}
  2000  			z.EncWriteMapElemValue()
  2001  			if yyn58 {
  2002  				r.EncodeNil()
  2003  			} else {
  2004  				yy450 := *x.FptrSliceBool
  2005  				if yy450 == nil {
  2006  					r.EncodeNil()
  2007  				} else {
  2008  					z.F.EncSliceBoolV(yy450, e)
  2009  				} // end block: if yy450 slice == nil
  2010  			}
  2011  			z.EncWriteMapElemKey()
  2012  			if z.IsJSONHandle() {
  2013  				z.WriteStr("\"FMapStringIntf\"")
  2014  			} else {
  2015  				r.EncodeString(`FMapStringIntf`)
  2016  			}
  2017  			z.EncWriteMapElemValue()
  2018  			if x.FMapStringIntf == nil {
  2019  				r.EncodeNil()
  2020  			} else {
  2021  				z.F.EncMapStringIntfV(x.FMapStringIntf, e)
  2022  			} // end block: if x.FMapStringIntf map == nil
  2023  			z.EncWriteMapElemKey()
  2024  			if z.IsJSONHandle() {
  2025  				z.WriteStr("\"FptrMapStringIntf\"")
  2026  			} else {
  2027  				r.EncodeString(`FptrMapStringIntf`)
  2028  			}
  2029  			z.EncWriteMapElemValue()
  2030  			if yyn60 {
  2031  				r.EncodeNil()
  2032  			} else {
  2033  				yy453 := *x.FptrMapStringIntf
  2034  				if yy453 == nil {
  2035  					r.EncodeNil()
  2036  				} else {
  2037  					z.F.EncMapStringIntfV(yy453, e)
  2038  				} // end block: if yy453 map == nil
  2039  			}
  2040  			z.EncWriteMapElemKey()
  2041  			if z.IsJSONHandle() {
  2042  				z.WriteStr("\"FMapStringString\"")
  2043  			} else {
  2044  				r.EncodeString(`FMapStringString`)
  2045  			}
  2046  			z.EncWriteMapElemValue()
  2047  			if x.FMapStringString == nil {
  2048  				r.EncodeNil()
  2049  			} else {
  2050  				z.F.EncMapStringStringV(x.FMapStringString, e)
  2051  			} // end block: if x.FMapStringString map == nil
  2052  			z.EncWriteMapElemKey()
  2053  			if z.IsJSONHandle() {
  2054  				z.WriteStr("\"FptrMapStringString\"")
  2055  			} else {
  2056  				r.EncodeString(`FptrMapStringString`)
  2057  			}
  2058  			z.EncWriteMapElemValue()
  2059  			if yyn62 {
  2060  				r.EncodeNil()
  2061  			} else {
  2062  				yy456 := *x.FptrMapStringString
  2063  				if yy456 == nil {
  2064  					r.EncodeNil()
  2065  				} else {
  2066  					z.F.EncMapStringStringV(yy456, e)
  2067  				} // end block: if yy456 map == nil
  2068  			}
  2069  			z.EncWriteMapElemKey()
  2070  			if z.IsJSONHandle() {
  2071  				z.WriteStr("\"FMapStringBytes\"")
  2072  			} else {
  2073  				r.EncodeString(`FMapStringBytes`)
  2074  			}
  2075  			z.EncWriteMapElemValue()
  2076  			if x.FMapStringBytes == nil {
  2077  				r.EncodeNil()
  2078  			} else {
  2079  				z.F.EncMapStringBytesV(x.FMapStringBytes, e)
  2080  			} // end block: if x.FMapStringBytes map == nil
  2081  			z.EncWriteMapElemKey()
  2082  			if z.IsJSONHandle() {
  2083  				z.WriteStr("\"FptrMapStringBytes\"")
  2084  			} else {
  2085  				r.EncodeString(`FptrMapStringBytes`)
  2086  			}
  2087  			z.EncWriteMapElemValue()
  2088  			if yyn64 {
  2089  				r.EncodeNil()
  2090  			} else {
  2091  				yy459 := *x.FptrMapStringBytes
  2092  				if yy459 == nil {
  2093  					r.EncodeNil()
  2094  				} else {
  2095  					z.F.EncMapStringBytesV(yy459, e)
  2096  				} // end block: if yy459 map == nil
  2097  			}
  2098  			z.EncWriteMapElemKey()
  2099  			if z.IsJSONHandle() {
  2100  				z.WriteStr("\"FMapStringUint8\"")
  2101  			} else {
  2102  				r.EncodeString(`FMapStringUint8`)
  2103  			}
  2104  			z.EncWriteMapElemValue()
  2105  			if x.FMapStringUint8 == nil {
  2106  				r.EncodeNil()
  2107  			} else {
  2108  				z.F.EncMapStringUint8V(x.FMapStringUint8, e)
  2109  			} // end block: if x.FMapStringUint8 map == nil
  2110  			z.EncWriteMapElemKey()
  2111  			if z.IsJSONHandle() {
  2112  				z.WriteStr("\"FptrMapStringUint8\"")
  2113  			} else {
  2114  				r.EncodeString(`FptrMapStringUint8`)
  2115  			}
  2116  			z.EncWriteMapElemValue()
  2117  			if yyn66 {
  2118  				r.EncodeNil()
  2119  			} else {
  2120  				yy462 := *x.FptrMapStringUint8
  2121  				if yy462 == nil {
  2122  					r.EncodeNil()
  2123  				} else {
  2124  					z.F.EncMapStringUint8V(yy462, e)
  2125  				} // end block: if yy462 map == nil
  2126  			}
  2127  			z.EncWriteMapElemKey()
  2128  			if z.IsJSONHandle() {
  2129  				z.WriteStr("\"FMapStringUint64\"")
  2130  			} else {
  2131  				r.EncodeString(`FMapStringUint64`)
  2132  			}
  2133  			z.EncWriteMapElemValue()
  2134  			if x.FMapStringUint64 == nil {
  2135  				r.EncodeNil()
  2136  			} else {
  2137  				z.F.EncMapStringUint64V(x.FMapStringUint64, e)
  2138  			} // end block: if x.FMapStringUint64 map == nil
  2139  			z.EncWriteMapElemKey()
  2140  			if z.IsJSONHandle() {
  2141  				z.WriteStr("\"FptrMapStringUint64\"")
  2142  			} else {
  2143  				r.EncodeString(`FptrMapStringUint64`)
  2144  			}
  2145  			z.EncWriteMapElemValue()
  2146  			if yyn68 {
  2147  				r.EncodeNil()
  2148  			} else {
  2149  				yy465 := *x.FptrMapStringUint64
  2150  				if yy465 == nil {
  2151  					r.EncodeNil()
  2152  				} else {
  2153  					z.F.EncMapStringUint64V(yy465, e)
  2154  				} // end block: if yy465 map == nil
  2155  			}
  2156  			z.EncWriteMapElemKey()
  2157  			if z.IsJSONHandle() {
  2158  				z.WriteStr("\"FMapStringInt\"")
  2159  			} else {
  2160  				r.EncodeString(`FMapStringInt`)
  2161  			}
  2162  			z.EncWriteMapElemValue()
  2163  			if x.FMapStringInt == nil {
  2164  				r.EncodeNil()
  2165  			} else {
  2166  				z.F.EncMapStringIntV(x.FMapStringInt, e)
  2167  			} // end block: if x.FMapStringInt map == nil
  2168  			z.EncWriteMapElemKey()
  2169  			if z.IsJSONHandle() {
  2170  				z.WriteStr("\"FptrMapStringInt\"")
  2171  			} else {
  2172  				r.EncodeString(`FptrMapStringInt`)
  2173  			}
  2174  			z.EncWriteMapElemValue()
  2175  			if yyn70 {
  2176  				r.EncodeNil()
  2177  			} else {
  2178  				yy468 := *x.FptrMapStringInt
  2179  				if yy468 == nil {
  2180  					r.EncodeNil()
  2181  				} else {
  2182  					z.F.EncMapStringIntV(yy468, e)
  2183  				} // end block: if yy468 map == nil
  2184  			}
  2185  			z.EncWriteMapElemKey()
  2186  			if z.IsJSONHandle() {
  2187  				z.WriteStr("\"FMapStringInt32\"")
  2188  			} else {
  2189  				r.EncodeString(`FMapStringInt32`)
  2190  			}
  2191  			z.EncWriteMapElemValue()
  2192  			if x.FMapStringInt32 == nil {
  2193  				r.EncodeNil()
  2194  			} else {
  2195  				z.F.EncMapStringInt32V(x.FMapStringInt32, e)
  2196  			} // end block: if x.FMapStringInt32 map == nil
  2197  			z.EncWriteMapElemKey()
  2198  			if z.IsJSONHandle() {
  2199  				z.WriteStr("\"FptrMapStringInt32\"")
  2200  			} else {
  2201  				r.EncodeString(`FptrMapStringInt32`)
  2202  			}
  2203  			z.EncWriteMapElemValue()
  2204  			if yyn72 {
  2205  				r.EncodeNil()
  2206  			} else {
  2207  				yy471 := *x.FptrMapStringInt32
  2208  				if yy471 == nil {
  2209  					r.EncodeNil()
  2210  				} else {
  2211  					z.F.EncMapStringInt32V(yy471, e)
  2212  				} // end block: if yy471 map == nil
  2213  			}
  2214  			z.EncWriteMapElemKey()
  2215  			if z.IsJSONHandle() {
  2216  				z.WriteStr("\"FMapStringFloat64\"")
  2217  			} else {
  2218  				r.EncodeString(`FMapStringFloat64`)
  2219  			}
  2220  			z.EncWriteMapElemValue()
  2221  			if x.FMapStringFloat64 == nil {
  2222  				r.EncodeNil()
  2223  			} else {
  2224  				z.F.EncMapStringFloat64V(x.FMapStringFloat64, e)
  2225  			} // end block: if x.FMapStringFloat64 map == nil
  2226  			z.EncWriteMapElemKey()
  2227  			if z.IsJSONHandle() {
  2228  				z.WriteStr("\"FptrMapStringFloat64\"")
  2229  			} else {
  2230  				r.EncodeString(`FptrMapStringFloat64`)
  2231  			}
  2232  			z.EncWriteMapElemValue()
  2233  			if yyn74 {
  2234  				r.EncodeNil()
  2235  			} else {
  2236  				yy474 := *x.FptrMapStringFloat64
  2237  				if yy474 == nil {
  2238  					r.EncodeNil()
  2239  				} else {
  2240  					z.F.EncMapStringFloat64V(yy474, e)
  2241  				} // end block: if yy474 map == nil
  2242  			}
  2243  			z.EncWriteMapElemKey()
  2244  			if z.IsJSONHandle() {
  2245  				z.WriteStr("\"FMapStringBool\"")
  2246  			} else {
  2247  				r.EncodeString(`FMapStringBool`)
  2248  			}
  2249  			z.EncWriteMapElemValue()
  2250  			if x.FMapStringBool == nil {
  2251  				r.EncodeNil()
  2252  			} else {
  2253  				z.F.EncMapStringBoolV(x.FMapStringBool, e)
  2254  			} // end block: if x.FMapStringBool map == nil
  2255  			z.EncWriteMapElemKey()
  2256  			if z.IsJSONHandle() {
  2257  				z.WriteStr("\"FptrMapStringBool\"")
  2258  			} else {
  2259  				r.EncodeString(`FptrMapStringBool`)
  2260  			}
  2261  			z.EncWriteMapElemValue()
  2262  			if yyn76 {
  2263  				r.EncodeNil()
  2264  			} else {
  2265  				yy477 := *x.FptrMapStringBool
  2266  				if yy477 == nil {
  2267  					r.EncodeNil()
  2268  				} else {
  2269  					z.F.EncMapStringBoolV(yy477, e)
  2270  				} // end block: if yy477 map == nil
  2271  			}
  2272  			z.EncWriteMapElemKey()
  2273  			if z.IsJSONHandle() {
  2274  				z.WriteStr("\"FMapUint8Intf\"")
  2275  			} else {
  2276  				r.EncodeString(`FMapUint8Intf`)
  2277  			}
  2278  			z.EncWriteMapElemValue()
  2279  			if x.FMapUint8Intf == nil {
  2280  				r.EncodeNil()
  2281  			} else {
  2282  				z.F.EncMapUint8IntfV(x.FMapUint8Intf, e)
  2283  			} // end block: if x.FMapUint8Intf map == nil
  2284  			z.EncWriteMapElemKey()
  2285  			if z.IsJSONHandle() {
  2286  				z.WriteStr("\"FptrMapUint8Intf\"")
  2287  			} else {
  2288  				r.EncodeString(`FptrMapUint8Intf`)
  2289  			}
  2290  			z.EncWriteMapElemValue()
  2291  			if yyn78 {
  2292  				r.EncodeNil()
  2293  			} else {
  2294  				yy480 := *x.FptrMapUint8Intf
  2295  				if yy480 == nil {
  2296  					r.EncodeNil()
  2297  				} else {
  2298  					z.F.EncMapUint8IntfV(yy480, e)
  2299  				} // end block: if yy480 map == nil
  2300  			}
  2301  			z.EncWriteMapElemKey()
  2302  			if z.IsJSONHandle() {
  2303  				z.WriteStr("\"FMapUint8String\"")
  2304  			} else {
  2305  				r.EncodeString(`FMapUint8String`)
  2306  			}
  2307  			z.EncWriteMapElemValue()
  2308  			if x.FMapUint8String == nil {
  2309  				r.EncodeNil()
  2310  			} else {
  2311  				z.F.EncMapUint8StringV(x.FMapUint8String, e)
  2312  			} // end block: if x.FMapUint8String map == nil
  2313  			z.EncWriteMapElemKey()
  2314  			if z.IsJSONHandle() {
  2315  				z.WriteStr("\"FptrMapUint8String\"")
  2316  			} else {
  2317  				r.EncodeString(`FptrMapUint8String`)
  2318  			}
  2319  			z.EncWriteMapElemValue()
  2320  			if yyn80 {
  2321  				r.EncodeNil()
  2322  			} else {
  2323  				yy483 := *x.FptrMapUint8String
  2324  				if yy483 == nil {
  2325  					r.EncodeNil()
  2326  				} else {
  2327  					z.F.EncMapUint8StringV(yy483, e)
  2328  				} // end block: if yy483 map == nil
  2329  			}
  2330  			z.EncWriteMapElemKey()
  2331  			if z.IsJSONHandle() {
  2332  				z.WriteStr("\"FMapUint8Bytes\"")
  2333  			} else {
  2334  				r.EncodeString(`FMapUint8Bytes`)
  2335  			}
  2336  			z.EncWriteMapElemValue()
  2337  			if x.FMapUint8Bytes == nil {
  2338  				r.EncodeNil()
  2339  			} else {
  2340  				z.F.EncMapUint8BytesV(x.FMapUint8Bytes, e)
  2341  			} // end block: if x.FMapUint8Bytes map == nil
  2342  			z.EncWriteMapElemKey()
  2343  			if z.IsJSONHandle() {
  2344  				z.WriteStr("\"FptrMapUint8Bytes\"")
  2345  			} else {
  2346  				r.EncodeString(`FptrMapUint8Bytes`)
  2347  			}
  2348  			z.EncWriteMapElemValue()
  2349  			if yyn82 {
  2350  				r.EncodeNil()
  2351  			} else {
  2352  				yy486 := *x.FptrMapUint8Bytes
  2353  				if yy486 == nil {
  2354  					r.EncodeNil()
  2355  				} else {
  2356  					z.F.EncMapUint8BytesV(yy486, e)
  2357  				} // end block: if yy486 map == nil
  2358  			}
  2359  			z.EncWriteMapElemKey()
  2360  			if z.IsJSONHandle() {
  2361  				z.WriteStr("\"FMapUint8Uint8\"")
  2362  			} else {
  2363  				r.EncodeString(`FMapUint8Uint8`)
  2364  			}
  2365  			z.EncWriteMapElemValue()
  2366  			if x.FMapUint8Uint8 == nil {
  2367  				r.EncodeNil()
  2368  			} else {
  2369  				z.F.EncMapUint8Uint8V(x.FMapUint8Uint8, e)
  2370  			} // end block: if x.FMapUint8Uint8 map == nil
  2371  			z.EncWriteMapElemKey()
  2372  			if z.IsJSONHandle() {
  2373  				z.WriteStr("\"FptrMapUint8Uint8\"")
  2374  			} else {
  2375  				r.EncodeString(`FptrMapUint8Uint8`)
  2376  			}
  2377  			z.EncWriteMapElemValue()
  2378  			if yyn84 {
  2379  				r.EncodeNil()
  2380  			} else {
  2381  				yy489 := *x.FptrMapUint8Uint8
  2382  				if yy489 == nil {
  2383  					r.EncodeNil()
  2384  				} else {
  2385  					z.F.EncMapUint8Uint8V(yy489, e)
  2386  				} // end block: if yy489 map == nil
  2387  			}
  2388  			z.EncWriteMapElemKey()
  2389  			if z.IsJSONHandle() {
  2390  				z.WriteStr("\"FMapUint8Uint64\"")
  2391  			} else {
  2392  				r.EncodeString(`FMapUint8Uint64`)
  2393  			}
  2394  			z.EncWriteMapElemValue()
  2395  			if x.FMapUint8Uint64 == nil {
  2396  				r.EncodeNil()
  2397  			} else {
  2398  				z.F.EncMapUint8Uint64V(x.FMapUint8Uint64, e)
  2399  			} // end block: if x.FMapUint8Uint64 map == nil
  2400  			z.EncWriteMapElemKey()
  2401  			if z.IsJSONHandle() {
  2402  				z.WriteStr("\"FptrMapUint8Uint64\"")
  2403  			} else {
  2404  				r.EncodeString(`FptrMapUint8Uint64`)
  2405  			}
  2406  			z.EncWriteMapElemValue()
  2407  			if yyn86 {
  2408  				r.EncodeNil()
  2409  			} else {
  2410  				yy492 := *x.FptrMapUint8Uint64
  2411  				if yy492 == nil {
  2412  					r.EncodeNil()
  2413  				} else {
  2414  					z.F.EncMapUint8Uint64V(yy492, e)
  2415  				} // end block: if yy492 map == nil
  2416  			}
  2417  			z.EncWriteMapElemKey()
  2418  			if z.IsJSONHandle() {
  2419  				z.WriteStr("\"FMapUint8Int\"")
  2420  			} else {
  2421  				r.EncodeString(`FMapUint8Int`)
  2422  			}
  2423  			z.EncWriteMapElemValue()
  2424  			if x.FMapUint8Int == nil {
  2425  				r.EncodeNil()
  2426  			} else {
  2427  				z.F.EncMapUint8IntV(x.FMapUint8Int, e)
  2428  			} // end block: if x.FMapUint8Int map == nil
  2429  			z.EncWriteMapElemKey()
  2430  			if z.IsJSONHandle() {
  2431  				z.WriteStr("\"FptrMapUint8Int\"")
  2432  			} else {
  2433  				r.EncodeString(`FptrMapUint8Int`)
  2434  			}
  2435  			z.EncWriteMapElemValue()
  2436  			if yyn88 {
  2437  				r.EncodeNil()
  2438  			} else {
  2439  				yy495 := *x.FptrMapUint8Int
  2440  				if yy495 == nil {
  2441  					r.EncodeNil()
  2442  				} else {
  2443  					z.F.EncMapUint8IntV(yy495, e)
  2444  				} // end block: if yy495 map == nil
  2445  			}
  2446  			z.EncWriteMapElemKey()
  2447  			if z.IsJSONHandle() {
  2448  				z.WriteStr("\"FMapUint8Int32\"")
  2449  			} else {
  2450  				r.EncodeString(`FMapUint8Int32`)
  2451  			}
  2452  			z.EncWriteMapElemValue()
  2453  			if x.FMapUint8Int32 == nil {
  2454  				r.EncodeNil()
  2455  			} else {
  2456  				z.F.EncMapUint8Int32V(x.FMapUint8Int32, e)
  2457  			} // end block: if x.FMapUint8Int32 map == nil
  2458  			z.EncWriteMapElemKey()
  2459  			if z.IsJSONHandle() {
  2460  				z.WriteStr("\"FptrMapUint8Int32\"")
  2461  			} else {
  2462  				r.EncodeString(`FptrMapUint8Int32`)
  2463  			}
  2464  			z.EncWriteMapElemValue()
  2465  			if yyn90 {
  2466  				r.EncodeNil()
  2467  			} else {
  2468  				yy498 := *x.FptrMapUint8Int32
  2469  				if yy498 == nil {
  2470  					r.EncodeNil()
  2471  				} else {
  2472  					z.F.EncMapUint8Int32V(yy498, e)
  2473  				} // end block: if yy498 map == nil
  2474  			}
  2475  			z.EncWriteMapElemKey()
  2476  			if z.IsJSONHandle() {
  2477  				z.WriteStr("\"FMapUint8Float64\"")
  2478  			} else {
  2479  				r.EncodeString(`FMapUint8Float64`)
  2480  			}
  2481  			z.EncWriteMapElemValue()
  2482  			if x.FMapUint8Float64 == nil {
  2483  				r.EncodeNil()
  2484  			} else {
  2485  				z.F.EncMapUint8Float64V(x.FMapUint8Float64, e)
  2486  			} // end block: if x.FMapUint8Float64 map == nil
  2487  			z.EncWriteMapElemKey()
  2488  			if z.IsJSONHandle() {
  2489  				z.WriteStr("\"FptrMapUint8Float64\"")
  2490  			} else {
  2491  				r.EncodeString(`FptrMapUint8Float64`)
  2492  			}
  2493  			z.EncWriteMapElemValue()
  2494  			if yyn92 {
  2495  				r.EncodeNil()
  2496  			} else {
  2497  				yy501 := *x.FptrMapUint8Float64
  2498  				if yy501 == nil {
  2499  					r.EncodeNil()
  2500  				} else {
  2501  					z.F.EncMapUint8Float64V(yy501, e)
  2502  				} // end block: if yy501 map == nil
  2503  			}
  2504  			z.EncWriteMapElemKey()
  2505  			if z.IsJSONHandle() {
  2506  				z.WriteStr("\"FMapUint8Bool\"")
  2507  			} else {
  2508  				r.EncodeString(`FMapUint8Bool`)
  2509  			}
  2510  			z.EncWriteMapElemValue()
  2511  			if x.FMapUint8Bool == nil {
  2512  				r.EncodeNil()
  2513  			} else {
  2514  				z.F.EncMapUint8BoolV(x.FMapUint8Bool, e)
  2515  			} // end block: if x.FMapUint8Bool map == nil
  2516  			z.EncWriteMapElemKey()
  2517  			if z.IsJSONHandle() {
  2518  				z.WriteStr("\"FptrMapUint8Bool\"")
  2519  			} else {
  2520  				r.EncodeString(`FptrMapUint8Bool`)
  2521  			}
  2522  			z.EncWriteMapElemValue()
  2523  			if yyn94 {
  2524  				r.EncodeNil()
  2525  			} else {
  2526  				yy504 := *x.FptrMapUint8Bool
  2527  				if yy504 == nil {
  2528  					r.EncodeNil()
  2529  				} else {
  2530  					z.F.EncMapUint8BoolV(yy504, e)
  2531  				} // end block: if yy504 map == nil
  2532  			}
  2533  			z.EncWriteMapElemKey()
  2534  			if z.IsJSONHandle() {
  2535  				z.WriteStr("\"FMapUint64Intf\"")
  2536  			} else {
  2537  				r.EncodeString(`FMapUint64Intf`)
  2538  			}
  2539  			z.EncWriteMapElemValue()
  2540  			if x.FMapUint64Intf == nil {
  2541  				r.EncodeNil()
  2542  			} else {
  2543  				z.F.EncMapUint64IntfV(x.FMapUint64Intf, e)
  2544  			} // end block: if x.FMapUint64Intf map == nil
  2545  			z.EncWriteMapElemKey()
  2546  			if z.IsJSONHandle() {
  2547  				z.WriteStr("\"FptrMapUint64Intf\"")
  2548  			} else {
  2549  				r.EncodeString(`FptrMapUint64Intf`)
  2550  			}
  2551  			z.EncWriteMapElemValue()
  2552  			if yyn96 {
  2553  				r.EncodeNil()
  2554  			} else {
  2555  				yy507 := *x.FptrMapUint64Intf
  2556  				if yy507 == nil {
  2557  					r.EncodeNil()
  2558  				} else {
  2559  					z.F.EncMapUint64IntfV(yy507, e)
  2560  				} // end block: if yy507 map == nil
  2561  			}
  2562  			z.EncWriteMapElemKey()
  2563  			if z.IsJSONHandle() {
  2564  				z.WriteStr("\"FMapUint64String\"")
  2565  			} else {
  2566  				r.EncodeString(`FMapUint64String`)
  2567  			}
  2568  			z.EncWriteMapElemValue()
  2569  			if x.FMapUint64String == nil {
  2570  				r.EncodeNil()
  2571  			} else {
  2572  				z.F.EncMapUint64StringV(x.FMapUint64String, e)
  2573  			} // end block: if x.FMapUint64String map == nil
  2574  			z.EncWriteMapElemKey()
  2575  			if z.IsJSONHandle() {
  2576  				z.WriteStr("\"FptrMapUint64String\"")
  2577  			} else {
  2578  				r.EncodeString(`FptrMapUint64String`)
  2579  			}
  2580  			z.EncWriteMapElemValue()
  2581  			if yyn98 {
  2582  				r.EncodeNil()
  2583  			} else {
  2584  				yy510 := *x.FptrMapUint64String
  2585  				if yy510 == nil {
  2586  					r.EncodeNil()
  2587  				} else {
  2588  					z.F.EncMapUint64StringV(yy510, e)
  2589  				} // end block: if yy510 map == nil
  2590  			}
  2591  			z.EncWriteMapElemKey()
  2592  			if z.IsJSONHandle() {
  2593  				z.WriteStr("\"FMapUint64Bytes\"")
  2594  			} else {
  2595  				r.EncodeString(`FMapUint64Bytes`)
  2596  			}
  2597  			z.EncWriteMapElemValue()
  2598  			if x.FMapUint64Bytes == nil {
  2599  				r.EncodeNil()
  2600  			} else {
  2601  				z.F.EncMapUint64BytesV(x.FMapUint64Bytes, e)
  2602  			} // end block: if x.FMapUint64Bytes map == nil
  2603  			z.EncWriteMapElemKey()
  2604  			if z.IsJSONHandle() {
  2605  				z.WriteStr("\"FptrMapUint64Bytes\"")
  2606  			} else {
  2607  				r.EncodeString(`FptrMapUint64Bytes`)
  2608  			}
  2609  			z.EncWriteMapElemValue()
  2610  			if yyn100 {
  2611  				r.EncodeNil()
  2612  			} else {
  2613  				yy513 := *x.FptrMapUint64Bytes
  2614  				if yy513 == nil {
  2615  					r.EncodeNil()
  2616  				} else {
  2617  					z.F.EncMapUint64BytesV(yy513, e)
  2618  				} // end block: if yy513 map == nil
  2619  			}
  2620  			z.EncWriteMapElemKey()
  2621  			if z.IsJSONHandle() {
  2622  				z.WriteStr("\"FMapUint64Uint8\"")
  2623  			} else {
  2624  				r.EncodeString(`FMapUint64Uint8`)
  2625  			}
  2626  			z.EncWriteMapElemValue()
  2627  			if x.FMapUint64Uint8 == nil {
  2628  				r.EncodeNil()
  2629  			} else {
  2630  				z.F.EncMapUint64Uint8V(x.FMapUint64Uint8, e)
  2631  			} // end block: if x.FMapUint64Uint8 map == nil
  2632  			z.EncWriteMapElemKey()
  2633  			if z.IsJSONHandle() {
  2634  				z.WriteStr("\"FptrMapUint64Uint8\"")
  2635  			} else {
  2636  				r.EncodeString(`FptrMapUint64Uint8`)
  2637  			}
  2638  			z.EncWriteMapElemValue()
  2639  			if yyn102 {
  2640  				r.EncodeNil()
  2641  			} else {
  2642  				yy516 := *x.FptrMapUint64Uint8
  2643  				if yy516 == nil {
  2644  					r.EncodeNil()
  2645  				} else {
  2646  					z.F.EncMapUint64Uint8V(yy516, e)
  2647  				} // end block: if yy516 map == nil
  2648  			}
  2649  			z.EncWriteMapElemKey()
  2650  			if z.IsJSONHandle() {
  2651  				z.WriteStr("\"FMapUint64Uint64\"")
  2652  			} else {
  2653  				r.EncodeString(`FMapUint64Uint64`)
  2654  			}
  2655  			z.EncWriteMapElemValue()
  2656  			if x.FMapUint64Uint64 == nil {
  2657  				r.EncodeNil()
  2658  			} else {
  2659  				z.F.EncMapUint64Uint64V(x.FMapUint64Uint64, e)
  2660  			} // end block: if x.FMapUint64Uint64 map == nil
  2661  			z.EncWriteMapElemKey()
  2662  			if z.IsJSONHandle() {
  2663  				z.WriteStr("\"FptrMapUint64Uint64\"")
  2664  			} else {
  2665  				r.EncodeString(`FptrMapUint64Uint64`)
  2666  			}
  2667  			z.EncWriteMapElemValue()
  2668  			if yyn104 {
  2669  				r.EncodeNil()
  2670  			} else {
  2671  				yy519 := *x.FptrMapUint64Uint64
  2672  				if yy519 == nil {
  2673  					r.EncodeNil()
  2674  				} else {
  2675  					z.F.EncMapUint64Uint64V(yy519, e)
  2676  				} // end block: if yy519 map == nil
  2677  			}
  2678  			z.EncWriteMapElemKey()
  2679  			if z.IsJSONHandle() {
  2680  				z.WriteStr("\"FMapUint64Int\"")
  2681  			} else {
  2682  				r.EncodeString(`FMapUint64Int`)
  2683  			}
  2684  			z.EncWriteMapElemValue()
  2685  			if x.FMapUint64Int == nil {
  2686  				r.EncodeNil()
  2687  			} else {
  2688  				z.F.EncMapUint64IntV(x.FMapUint64Int, e)
  2689  			} // end block: if x.FMapUint64Int map == nil
  2690  			z.EncWriteMapElemKey()
  2691  			if z.IsJSONHandle() {
  2692  				z.WriteStr("\"FptrMapUint64Int\"")
  2693  			} else {
  2694  				r.EncodeString(`FptrMapUint64Int`)
  2695  			}
  2696  			z.EncWriteMapElemValue()
  2697  			if yyn106 {
  2698  				r.EncodeNil()
  2699  			} else {
  2700  				yy522 := *x.FptrMapUint64Int
  2701  				if yy522 == nil {
  2702  					r.EncodeNil()
  2703  				} else {
  2704  					z.F.EncMapUint64IntV(yy522, e)
  2705  				} // end block: if yy522 map == nil
  2706  			}
  2707  			z.EncWriteMapElemKey()
  2708  			if z.IsJSONHandle() {
  2709  				z.WriteStr("\"FMapUint64Int32\"")
  2710  			} else {
  2711  				r.EncodeString(`FMapUint64Int32`)
  2712  			}
  2713  			z.EncWriteMapElemValue()
  2714  			if x.FMapUint64Int32 == nil {
  2715  				r.EncodeNil()
  2716  			} else {
  2717  				z.F.EncMapUint64Int32V(x.FMapUint64Int32, e)
  2718  			} // end block: if x.FMapUint64Int32 map == nil
  2719  			z.EncWriteMapElemKey()
  2720  			if z.IsJSONHandle() {
  2721  				z.WriteStr("\"FptrMapUint64Int32\"")
  2722  			} else {
  2723  				r.EncodeString(`FptrMapUint64Int32`)
  2724  			}
  2725  			z.EncWriteMapElemValue()
  2726  			if yyn108 {
  2727  				r.EncodeNil()
  2728  			} else {
  2729  				yy525 := *x.FptrMapUint64Int32
  2730  				if yy525 == nil {
  2731  					r.EncodeNil()
  2732  				} else {
  2733  					z.F.EncMapUint64Int32V(yy525, e)
  2734  				} // end block: if yy525 map == nil
  2735  			}
  2736  			z.EncWriteMapElemKey()
  2737  			if z.IsJSONHandle() {
  2738  				z.WriteStr("\"FMapUint64Float64\"")
  2739  			} else {
  2740  				r.EncodeString(`FMapUint64Float64`)
  2741  			}
  2742  			z.EncWriteMapElemValue()
  2743  			if x.FMapUint64Float64 == nil {
  2744  				r.EncodeNil()
  2745  			} else {
  2746  				z.F.EncMapUint64Float64V(x.FMapUint64Float64, e)
  2747  			} // end block: if x.FMapUint64Float64 map == nil
  2748  			z.EncWriteMapElemKey()
  2749  			if z.IsJSONHandle() {
  2750  				z.WriteStr("\"FptrMapUint64Float64\"")
  2751  			} else {
  2752  				r.EncodeString(`FptrMapUint64Float64`)
  2753  			}
  2754  			z.EncWriteMapElemValue()
  2755  			if yyn110 {
  2756  				r.EncodeNil()
  2757  			} else {
  2758  				yy528 := *x.FptrMapUint64Float64
  2759  				if yy528 == nil {
  2760  					r.EncodeNil()
  2761  				} else {
  2762  					z.F.EncMapUint64Float64V(yy528, e)
  2763  				} // end block: if yy528 map == nil
  2764  			}
  2765  			z.EncWriteMapElemKey()
  2766  			if z.IsJSONHandle() {
  2767  				z.WriteStr("\"FMapUint64Bool\"")
  2768  			} else {
  2769  				r.EncodeString(`FMapUint64Bool`)
  2770  			}
  2771  			z.EncWriteMapElemValue()
  2772  			if x.FMapUint64Bool == nil {
  2773  				r.EncodeNil()
  2774  			} else {
  2775  				z.F.EncMapUint64BoolV(x.FMapUint64Bool, e)
  2776  			} // end block: if x.FMapUint64Bool map == nil
  2777  			z.EncWriteMapElemKey()
  2778  			if z.IsJSONHandle() {
  2779  				z.WriteStr("\"FptrMapUint64Bool\"")
  2780  			} else {
  2781  				r.EncodeString(`FptrMapUint64Bool`)
  2782  			}
  2783  			z.EncWriteMapElemValue()
  2784  			if yyn112 {
  2785  				r.EncodeNil()
  2786  			} else {
  2787  				yy531 := *x.FptrMapUint64Bool
  2788  				if yy531 == nil {
  2789  					r.EncodeNil()
  2790  				} else {
  2791  					z.F.EncMapUint64BoolV(yy531, e)
  2792  				} // end block: if yy531 map == nil
  2793  			}
  2794  			z.EncWriteMapElemKey()
  2795  			if z.IsJSONHandle() {
  2796  				z.WriteStr("\"FMapIntIntf\"")
  2797  			} else {
  2798  				r.EncodeString(`FMapIntIntf`)
  2799  			}
  2800  			z.EncWriteMapElemValue()
  2801  			if x.FMapIntIntf == nil {
  2802  				r.EncodeNil()
  2803  			} else {
  2804  				z.F.EncMapIntIntfV(x.FMapIntIntf, e)
  2805  			} // end block: if x.FMapIntIntf map == nil
  2806  			z.EncWriteMapElemKey()
  2807  			if z.IsJSONHandle() {
  2808  				z.WriteStr("\"FptrMapIntIntf\"")
  2809  			} else {
  2810  				r.EncodeString(`FptrMapIntIntf`)
  2811  			}
  2812  			z.EncWriteMapElemValue()
  2813  			if yyn114 {
  2814  				r.EncodeNil()
  2815  			} else {
  2816  				yy534 := *x.FptrMapIntIntf
  2817  				if yy534 == nil {
  2818  					r.EncodeNil()
  2819  				} else {
  2820  					z.F.EncMapIntIntfV(yy534, e)
  2821  				} // end block: if yy534 map == nil
  2822  			}
  2823  			z.EncWriteMapElemKey()
  2824  			if z.IsJSONHandle() {
  2825  				z.WriteStr("\"FMapIntString\"")
  2826  			} else {
  2827  				r.EncodeString(`FMapIntString`)
  2828  			}
  2829  			z.EncWriteMapElemValue()
  2830  			if x.FMapIntString == nil {
  2831  				r.EncodeNil()
  2832  			} else {
  2833  				z.F.EncMapIntStringV(x.FMapIntString, e)
  2834  			} // end block: if x.FMapIntString map == nil
  2835  			z.EncWriteMapElemKey()
  2836  			if z.IsJSONHandle() {
  2837  				z.WriteStr("\"FptrMapIntString\"")
  2838  			} else {
  2839  				r.EncodeString(`FptrMapIntString`)
  2840  			}
  2841  			z.EncWriteMapElemValue()
  2842  			if yyn116 {
  2843  				r.EncodeNil()
  2844  			} else {
  2845  				yy537 := *x.FptrMapIntString
  2846  				if yy537 == nil {
  2847  					r.EncodeNil()
  2848  				} else {
  2849  					z.F.EncMapIntStringV(yy537, e)
  2850  				} // end block: if yy537 map == nil
  2851  			}
  2852  			z.EncWriteMapElemKey()
  2853  			if z.IsJSONHandle() {
  2854  				z.WriteStr("\"FMapIntBytes\"")
  2855  			} else {
  2856  				r.EncodeString(`FMapIntBytes`)
  2857  			}
  2858  			z.EncWriteMapElemValue()
  2859  			if x.FMapIntBytes == nil {
  2860  				r.EncodeNil()
  2861  			} else {
  2862  				z.F.EncMapIntBytesV(x.FMapIntBytes, e)
  2863  			} // end block: if x.FMapIntBytes map == nil
  2864  			z.EncWriteMapElemKey()
  2865  			if z.IsJSONHandle() {
  2866  				z.WriteStr("\"FptrMapIntBytes\"")
  2867  			} else {
  2868  				r.EncodeString(`FptrMapIntBytes`)
  2869  			}
  2870  			z.EncWriteMapElemValue()
  2871  			if yyn118 {
  2872  				r.EncodeNil()
  2873  			} else {
  2874  				yy540 := *x.FptrMapIntBytes
  2875  				if yy540 == nil {
  2876  					r.EncodeNil()
  2877  				} else {
  2878  					z.F.EncMapIntBytesV(yy540, e)
  2879  				} // end block: if yy540 map == nil
  2880  			}
  2881  			z.EncWriteMapElemKey()
  2882  			if z.IsJSONHandle() {
  2883  				z.WriteStr("\"FMapIntUint8\"")
  2884  			} else {
  2885  				r.EncodeString(`FMapIntUint8`)
  2886  			}
  2887  			z.EncWriteMapElemValue()
  2888  			if x.FMapIntUint8 == nil {
  2889  				r.EncodeNil()
  2890  			} else {
  2891  				z.F.EncMapIntUint8V(x.FMapIntUint8, e)
  2892  			} // end block: if x.FMapIntUint8 map == nil
  2893  			z.EncWriteMapElemKey()
  2894  			if z.IsJSONHandle() {
  2895  				z.WriteStr("\"FptrMapIntUint8\"")
  2896  			} else {
  2897  				r.EncodeString(`FptrMapIntUint8`)
  2898  			}
  2899  			z.EncWriteMapElemValue()
  2900  			if yyn120 {
  2901  				r.EncodeNil()
  2902  			} else {
  2903  				yy543 := *x.FptrMapIntUint8
  2904  				if yy543 == nil {
  2905  					r.EncodeNil()
  2906  				} else {
  2907  					z.F.EncMapIntUint8V(yy543, e)
  2908  				} // end block: if yy543 map == nil
  2909  			}
  2910  			z.EncWriteMapElemKey()
  2911  			if z.IsJSONHandle() {
  2912  				z.WriteStr("\"FMapIntUint64\"")
  2913  			} else {
  2914  				r.EncodeString(`FMapIntUint64`)
  2915  			}
  2916  			z.EncWriteMapElemValue()
  2917  			if x.FMapIntUint64 == nil {
  2918  				r.EncodeNil()
  2919  			} else {
  2920  				z.F.EncMapIntUint64V(x.FMapIntUint64, e)
  2921  			} // end block: if x.FMapIntUint64 map == nil
  2922  			z.EncWriteMapElemKey()
  2923  			if z.IsJSONHandle() {
  2924  				z.WriteStr("\"FptrMapIntUint64\"")
  2925  			} else {
  2926  				r.EncodeString(`FptrMapIntUint64`)
  2927  			}
  2928  			z.EncWriteMapElemValue()
  2929  			if yyn122 {
  2930  				r.EncodeNil()
  2931  			} else {
  2932  				yy546 := *x.FptrMapIntUint64
  2933  				if yy546 == nil {
  2934  					r.EncodeNil()
  2935  				} else {
  2936  					z.F.EncMapIntUint64V(yy546, e)
  2937  				} // end block: if yy546 map == nil
  2938  			}
  2939  			z.EncWriteMapElemKey()
  2940  			if z.IsJSONHandle() {
  2941  				z.WriteStr("\"FMapIntInt\"")
  2942  			} else {
  2943  				r.EncodeString(`FMapIntInt`)
  2944  			}
  2945  			z.EncWriteMapElemValue()
  2946  			if x.FMapIntInt == nil {
  2947  				r.EncodeNil()
  2948  			} else {
  2949  				z.F.EncMapIntIntV(x.FMapIntInt, e)
  2950  			} // end block: if x.FMapIntInt map == nil
  2951  			z.EncWriteMapElemKey()
  2952  			if z.IsJSONHandle() {
  2953  				z.WriteStr("\"FptrMapIntInt\"")
  2954  			} else {
  2955  				r.EncodeString(`FptrMapIntInt`)
  2956  			}
  2957  			z.EncWriteMapElemValue()
  2958  			if yyn124 {
  2959  				r.EncodeNil()
  2960  			} else {
  2961  				yy549 := *x.FptrMapIntInt
  2962  				if yy549 == nil {
  2963  					r.EncodeNil()
  2964  				} else {
  2965  					z.F.EncMapIntIntV(yy549, e)
  2966  				} // end block: if yy549 map == nil
  2967  			}
  2968  			z.EncWriteMapElemKey()
  2969  			if z.IsJSONHandle() {
  2970  				z.WriteStr("\"FMapIntInt32\"")
  2971  			} else {
  2972  				r.EncodeString(`FMapIntInt32`)
  2973  			}
  2974  			z.EncWriteMapElemValue()
  2975  			if x.FMapIntInt32 == nil {
  2976  				r.EncodeNil()
  2977  			} else {
  2978  				z.F.EncMapIntInt32V(x.FMapIntInt32, e)
  2979  			} // end block: if x.FMapIntInt32 map == nil
  2980  			z.EncWriteMapElemKey()
  2981  			if z.IsJSONHandle() {
  2982  				z.WriteStr("\"FptrMapIntInt32\"")
  2983  			} else {
  2984  				r.EncodeString(`FptrMapIntInt32`)
  2985  			}
  2986  			z.EncWriteMapElemValue()
  2987  			if yyn126 {
  2988  				r.EncodeNil()
  2989  			} else {
  2990  				yy552 := *x.FptrMapIntInt32
  2991  				if yy552 == nil {
  2992  					r.EncodeNil()
  2993  				} else {
  2994  					z.F.EncMapIntInt32V(yy552, e)
  2995  				} // end block: if yy552 map == nil
  2996  			}
  2997  			z.EncWriteMapElemKey()
  2998  			if z.IsJSONHandle() {
  2999  				z.WriteStr("\"FMapIntFloat64\"")
  3000  			} else {
  3001  				r.EncodeString(`FMapIntFloat64`)
  3002  			}
  3003  			z.EncWriteMapElemValue()
  3004  			if x.FMapIntFloat64 == nil {
  3005  				r.EncodeNil()
  3006  			} else {
  3007  				z.F.EncMapIntFloat64V(x.FMapIntFloat64, e)
  3008  			} // end block: if x.FMapIntFloat64 map == nil
  3009  			z.EncWriteMapElemKey()
  3010  			if z.IsJSONHandle() {
  3011  				z.WriteStr("\"FptrMapIntFloat64\"")
  3012  			} else {
  3013  				r.EncodeString(`FptrMapIntFloat64`)
  3014  			}
  3015  			z.EncWriteMapElemValue()
  3016  			if yyn128 {
  3017  				r.EncodeNil()
  3018  			} else {
  3019  				yy555 := *x.FptrMapIntFloat64
  3020  				if yy555 == nil {
  3021  					r.EncodeNil()
  3022  				} else {
  3023  					z.F.EncMapIntFloat64V(yy555, e)
  3024  				} // end block: if yy555 map == nil
  3025  			}
  3026  			z.EncWriteMapElemKey()
  3027  			if z.IsJSONHandle() {
  3028  				z.WriteStr("\"FMapIntBool\"")
  3029  			} else {
  3030  				r.EncodeString(`FMapIntBool`)
  3031  			}
  3032  			z.EncWriteMapElemValue()
  3033  			if x.FMapIntBool == nil {
  3034  				r.EncodeNil()
  3035  			} else {
  3036  				z.F.EncMapIntBoolV(x.FMapIntBool, e)
  3037  			} // end block: if x.FMapIntBool map == nil
  3038  			z.EncWriteMapElemKey()
  3039  			if z.IsJSONHandle() {
  3040  				z.WriteStr("\"FptrMapIntBool\"")
  3041  			} else {
  3042  				r.EncodeString(`FptrMapIntBool`)
  3043  			}
  3044  			z.EncWriteMapElemValue()
  3045  			if yyn130 {
  3046  				r.EncodeNil()
  3047  			} else {
  3048  				yy558 := *x.FptrMapIntBool
  3049  				if yy558 == nil {
  3050  					r.EncodeNil()
  3051  				} else {
  3052  					z.F.EncMapIntBoolV(yy558, e)
  3053  				} // end block: if yy558 map == nil
  3054  			}
  3055  			z.EncWriteMapElemKey()
  3056  			if z.IsJSONHandle() {
  3057  				z.WriteStr("\"FMapInt32Intf\"")
  3058  			} else {
  3059  				r.EncodeString(`FMapInt32Intf`)
  3060  			}
  3061  			z.EncWriteMapElemValue()
  3062  			if x.FMapInt32Intf == nil {
  3063  				r.EncodeNil()
  3064  			} else {
  3065  				z.F.EncMapInt32IntfV(x.FMapInt32Intf, e)
  3066  			} // end block: if x.FMapInt32Intf map == nil
  3067  			z.EncWriteMapElemKey()
  3068  			if z.IsJSONHandle() {
  3069  				z.WriteStr("\"FptrMapInt32Intf\"")
  3070  			} else {
  3071  				r.EncodeString(`FptrMapInt32Intf`)
  3072  			}
  3073  			z.EncWriteMapElemValue()
  3074  			if yyn132 {
  3075  				r.EncodeNil()
  3076  			} else {
  3077  				yy561 := *x.FptrMapInt32Intf
  3078  				if yy561 == nil {
  3079  					r.EncodeNil()
  3080  				} else {
  3081  					z.F.EncMapInt32IntfV(yy561, e)
  3082  				} // end block: if yy561 map == nil
  3083  			}
  3084  			z.EncWriteMapElemKey()
  3085  			if z.IsJSONHandle() {
  3086  				z.WriteStr("\"FMapInt32String\"")
  3087  			} else {
  3088  				r.EncodeString(`FMapInt32String`)
  3089  			}
  3090  			z.EncWriteMapElemValue()
  3091  			if x.FMapInt32String == nil {
  3092  				r.EncodeNil()
  3093  			} else {
  3094  				z.F.EncMapInt32StringV(x.FMapInt32String, e)
  3095  			} // end block: if x.FMapInt32String map == nil
  3096  			z.EncWriteMapElemKey()
  3097  			if z.IsJSONHandle() {
  3098  				z.WriteStr("\"FptrMapInt32String\"")
  3099  			} else {
  3100  				r.EncodeString(`FptrMapInt32String`)
  3101  			}
  3102  			z.EncWriteMapElemValue()
  3103  			if yyn134 {
  3104  				r.EncodeNil()
  3105  			} else {
  3106  				yy564 := *x.FptrMapInt32String
  3107  				if yy564 == nil {
  3108  					r.EncodeNil()
  3109  				} else {
  3110  					z.F.EncMapInt32StringV(yy564, e)
  3111  				} // end block: if yy564 map == nil
  3112  			}
  3113  			z.EncWriteMapElemKey()
  3114  			if z.IsJSONHandle() {
  3115  				z.WriteStr("\"FMapInt32Bytes\"")
  3116  			} else {
  3117  				r.EncodeString(`FMapInt32Bytes`)
  3118  			}
  3119  			z.EncWriteMapElemValue()
  3120  			if x.FMapInt32Bytes == nil {
  3121  				r.EncodeNil()
  3122  			} else {
  3123  				z.F.EncMapInt32BytesV(x.FMapInt32Bytes, e)
  3124  			} // end block: if x.FMapInt32Bytes map == nil
  3125  			z.EncWriteMapElemKey()
  3126  			if z.IsJSONHandle() {
  3127  				z.WriteStr("\"FptrMapInt32Bytes\"")
  3128  			} else {
  3129  				r.EncodeString(`FptrMapInt32Bytes`)
  3130  			}
  3131  			z.EncWriteMapElemValue()
  3132  			if yyn136 {
  3133  				r.EncodeNil()
  3134  			} else {
  3135  				yy567 := *x.FptrMapInt32Bytes
  3136  				if yy567 == nil {
  3137  					r.EncodeNil()
  3138  				} else {
  3139  					z.F.EncMapInt32BytesV(yy567, e)
  3140  				} // end block: if yy567 map == nil
  3141  			}
  3142  			z.EncWriteMapElemKey()
  3143  			if z.IsJSONHandle() {
  3144  				z.WriteStr("\"FMapInt32Uint8\"")
  3145  			} else {
  3146  				r.EncodeString(`FMapInt32Uint8`)
  3147  			}
  3148  			z.EncWriteMapElemValue()
  3149  			if x.FMapInt32Uint8 == nil {
  3150  				r.EncodeNil()
  3151  			} else {
  3152  				z.F.EncMapInt32Uint8V(x.FMapInt32Uint8, e)
  3153  			} // end block: if x.FMapInt32Uint8 map == nil
  3154  			z.EncWriteMapElemKey()
  3155  			if z.IsJSONHandle() {
  3156  				z.WriteStr("\"FptrMapInt32Uint8\"")
  3157  			} else {
  3158  				r.EncodeString(`FptrMapInt32Uint8`)
  3159  			}
  3160  			z.EncWriteMapElemValue()
  3161  			if yyn138 {
  3162  				r.EncodeNil()
  3163  			} else {
  3164  				yy570 := *x.FptrMapInt32Uint8
  3165  				if yy570 == nil {
  3166  					r.EncodeNil()
  3167  				} else {
  3168  					z.F.EncMapInt32Uint8V(yy570, e)
  3169  				} // end block: if yy570 map == nil
  3170  			}
  3171  			z.EncWriteMapElemKey()
  3172  			if z.IsJSONHandle() {
  3173  				z.WriteStr("\"FMapInt32Uint64\"")
  3174  			} else {
  3175  				r.EncodeString(`FMapInt32Uint64`)
  3176  			}
  3177  			z.EncWriteMapElemValue()
  3178  			if x.FMapInt32Uint64 == nil {
  3179  				r.EncodeNil()
  3180  			} else {
  3181  				z.F.EncMapInt32Uint64V(x.FMapInt32Uint64, e)
  3182  			} // end block: if x.FMapInt32Uint64 map == nil
  3183  			z.EncWriteMapElemKey()
  3184  			if z.IsJSONHandle() {
  3185  				z.WriteStr("\"FptrMapInt32Uint64\"")
  3186  			} else {
  3187  				r.EncodeString(`FptrMapInt32Uint64`)
  3188  			}
  3189  			z.EncWriteMapElemValue()
  3190  			if yyn140 {
  3191  				r.EncodeNil()
  3192  			} else {
  3193  				yy573 := *x.FptrMapInt32Uint64
  3194  				if yy573 == nil {
  3195  					r.EncodeNil()
  3196  				} else {
  3197  					z.F.EncMapInt32Uint64V(yy573, e)
  3198  				} // end block: if yy573 map == nil
  3199  			}
  3200  			z.EncWriteMapElemKey()
  3201  			if z.IsJSONHandle() {
  3202  				z.WriteStr("\"FMapInt32Int\"")
  3203  			} else {
  3204  				r.EncodeString(`FMapInt32Int`)
  3205  			}
  3206  			z.EncWriteMapElemValue()
  3207  			if x.FMapInt32Int == nil {
  3208  				r.EncodeNil()
  3209  			} else {
  3210  				z.F.EncMapInt32IntV(x.FMapInt32Int, e)
  3211  			} // end block: if x.FMapInt32Int map == nil
  3212  			z.EncWriteMapElemKey()
  3213  			if z.IsJSONHandle() {
  3214  				z.WriteStr("\"FptrMapInt32Int\"")
  3215  			} else {
  3216  				r.EncodeString(`FptrMapInt32Int`)
  3217  			}
  3218  			z.EncWriteMapElemValue()
  3219  			if yyn142 {
  3220  				r.EncodeNil()
  3221  			} else {
  3222  				yy576 := *x.FptrMapInt32Int
  3223  				if yy576 == nil {
  3224  					r.EncodeNil()
  3225  				} else {
  3226  					z.F.EncMapInt32IntV(yy576, e)
  3227  				} // end block: if yy576 map == nil
  3228  			}
  3229  			z.EncWriteMapElemKey()
  3230  			if z.IsJSONHandle() {
  3231  				z.WriteStr("\"FMapInt32Int32\"")
  3232  			} else {
  3233  				r.EncodeString(`FMapInt32Int32`)
  3234  			}
  3235  			z.EncWriteMapElemValue()
  3236  			if x.FMapInt32Int32 == nil {
  3237  				r.EncodeNil()
  3238  			} else {
  3239  				z.F.EncMapInt32Int32V(x.FMapInt32Int32, e)
  3240  			} // end block: if x.FMapInt32Int32 map == nil
  3241  			z.EncWriteMapElemKey()
  3242  			if z.IsJSONHandle() {
  3243  				z.WriteStr("\"FptrMapInt32Int32\"")
  3244  			} else {
  3245  				r.EncodeString(`FptrMapInt32Int32`)
  3246  			}
  3247  			z.EncWriteMapElemValue()
  3248  			if yyn144 {
  3249  				r.EncodeNil()
  3250  			} else {
  3251  				yy579 := *x.FptrMapInt32Int32
  3252  				if yy579 == nil {
  3253  					r.EncodeNil()
  3254  				} else {
  3255  					z.F.EncMapInt32Int32V(yy579, e)
  3256  				} // end block: if yy579 map == nil
  3257  			}
  3258  			z.EncWriteMapElemKey()
  3259  			if z.IsJSONHandle() {
  3260  				z.WriteStr("\"FMapInt32Float64\"")
  3261  			} else {
  3262  				r.EncodeString(`FMapInt32Float64`)
  3263  			}
  3264  			z.EncWriteMapElemValue()
  3265  			if x.FMapInt32Float64 == nil {
  3266  				r.EncodeNil()
  3267  			} else {
  3268  				z.F.EncMapInt32Float64V(x.FMapInt32Float64, e)
  3269  			} // end block: if x.FMapInt32Float64 map == nil
  3270  			z.EncWriteMapElemKey()
  3271  			if z.IsJSONHandle() {
  3272  				z.WriteStr("\"FptrMapInt32Float64\"")
  3273  			} else {
  3274  				r.EncodeString(`FptrMapInt32Float64`)
  3275  			}
  3276  			z.EncWriteMapElemValue()
  3277  			if yyn146 {
  3278  				r.EncodeNil()
  3279  			} else {
  3280  				yy582 := *x.FptrMapInt32Float64
  3281  				if yy582 == nil {
  3282  					r.EncodeNil()
  3283  				} else {
  3284  					z.F.EncMapInt32Float64V(yy582, e)
  3285  				} // end block: if yy582 map == nil
  3286  			}
  3287  			z.EncWriteMapElemKey()
  3288  			if z.IsJSONHandle() {
  3289  				z.WriteStr("\"FMapInt32Bool\"")
  3290  			} else {
  3291  				r.EncodeString(`FMapInt32Bool`)
  3292  			}
  3293  			z.EncWriteMapElemValue()
  3294  			if x.FMapInt32Bool == nil {
  3295  				r.EncodeNil()
  3296  			} else {
  3297  				z.F.EncMapInt32BoolV(x.FMapInt32Bool, e)
  3298  			} // end block: if x.FMapInt32Bool map == nil
  3299  			z.EncWriteMapElemKey()
  3300  			if z.IsJSONHandle() {
  3301  				z.WriteStr("\"FptrMapInt32Bool\"")
  3302  			} else {
  3303  				r.EncodeString(`FptrMapInt32Bool`)
  3304  			}
  3305  			z.EncWriteMapElemValue()
  3306  			if yyn148 {
  3307  				r.EncodeNil()
  3308  			} else {
  3309  				yy585 := *x.FptrMapInt32Bool
  3310  				if yy585 == nil {
  3311  					r.EncodeNil()
  3312  				} else {
  3313  					z.F.EncMapInt32BoolV(yy585, e)
  3314  				} // end block: if yy585 map == nil
  3315  			}
  3316  			z.EncWriteMapEnd()
  3317  		}
  3318  	}
  3319  }
  3320  
  3321  func (x *TestMammoth2) CodecDecodeSelf(d *Decoder) {
  3322  	var h codecSelfer19781
  3323  	z, r := GenHelper().Decoder(d)
  3324  	_, _, _ = h, z, r
  3325  	yyct2 := r.ContainerType()
  3326  	if yyct2 == codecSelferValueTypeNil19781 {
  3327  		*(x) = TestMammoth2{}
  3328  	} else if yyct2 == codecSelferValueTypeMap19781 {
  3329  		yyl2 := z.DecReadMapStart()
  3330  		if yyl2 == 0 {
  3331  		} else {
  3332  			x.codecDecodeSelfFromMap(yyl2, d)
  3333  		}
  3334  		z.DecReadMapEnd()
  3335  	} else if yyct2 == codecSelferValueTypeArray19781 {
  3336  		yyl2 := z.DecReadArrayStart()
  3337  		if yyl2 != 0 {
  3338  			x.codecDecodeSelfFromArray(yyl2, d)
  3339  		}
  3340  		z.DecReadArrayEnd()
  3341  	} else {
  3342  		panic(errCodecSelferOnlyMapOrArrayEncodeToStruct19781)
  3343  	}
  3344  }
  3345  
  3346  func (x *TestMammoth2) codecDecodeSelfFromMap(l int, d *Decoder) {
  3347  	var h codecSelfer19781
  3348  	z, r := GenHelper().Decoder(d)
  3349  	_, _, _ = h, z, r
  3350  	var yyhl3 bool = l >= 0
  3351  	for yyj3 := 0; ; yyj3++ {
  3352  		if yyhl3 {
  3353  			if yyj3 >= l {
  3354  				break
  3355  			}
  3356  		} else {
  3357  			if z.DecCheckBreak() {
  3358  				break
  3359  			}
  3360  		}
  3361  		z.DecReadMapElemKey()
  3362  		yys3 := r.DecodeStringAsBytes()
  3363  		z.DecReadMapElemValue()
  3364  		switch string(yys3) {
  3365  		case "FIntf":
  3366  			z.DecFallback(&x.FIntf, true)
  3367  		case "FptrIntf":
  3368  			if r.TryNil() {
  3369  				if x.FptrIntf != nil { // remove the if-true
  3370  					x.FptrIntf = nil
  3371  				}
  3372  			} else {
  3373  				if x.FptrIntf == nil {
  3374  					x.FptrIntf = new(interface{})
  3375  				}
  3376  				z.DecFallback(x.FptrIntf, true)
  3377  			}
  3378  		case "FString":
  3379  			x.FString = (string)(z.DecStringZC(r.DecodeStringAsBytes()))
  3380  		case "FptrString":
  3381  			if r.TryNil() {
  3382  				if x.FptrString != nil { // remove the if-true
  3383  					x.FptrString = nil
  3384  				}
  3385  			} else {
  3386  				if x.FptrString == nil {
  3387  					x.FptrString = new(string)
  3388  				}
  3389  				*x.FptrString = (string)(z.DecStringZC(r.DecodeStringAsBytes()))
  3390  			}
  3391  		case "FBytes":
  3392  			x.FBytes = z.DecodeBytesInto(([]byte)(x.FBytes))
  3393  		case "FptrBytes":
  3394  			if r.TryNil() {
  3395  				if x.FptrBytes != nil { // remove the if-true
  3396  					x.FptrBytes = nil
  3397  				}
  3398  			} else {
  3399  				if x.FptrBytes == nil {
  3400  					x.FptrBytes = new([]uint8)
  3401  				}
  3402  				*x.FptrBytes = z.DecodeBytesInto(*(*[]byte)(x.FptrBytes))
  3403  			}
  3404  		case "FFloat32":
  3405  			x.FFloat32 = (float32)(z.DecDecodeFloat32())
  3406  		case "FptrFloat32":
  3407  			if r.TryNil() {
  3408  				if x.FptrFloat32 != nil { // remove the if-true
  3409  					x.FptrFloat32 = nil
  3410  				}
  3411  			} else {
  3412  				if x.FptrFloat32 == nil {
  3413  					x.FptrFloat32 = new(float32)
  3414  				}
  3415  				*x.FptrFloat32 = (float32)(z.DecDecodeFloat32())
  3416  			}
  3417  		case "FFloat64":
  3418  			x.FFloat64 = (float64)(r.DecodeFloat64())
  3419  		case "FptrFloat64":
  3420  			if r.TryNil() {
  3421  				if x.FptrFloat64 != nil { // remove the if-true
  3422  					x.FptrFloat64 = nil
  3423  				}
  3424  			} else {
  3425  				if x.FptrFloat64 == nil {
  3426  					x.FptrFloat64 = new(float64)
  3427  				}
  3428  				*x.FptrFloat64 = (float64)(r.DecodeFloat64())
  3429  			}
  3430  		case "FUint":
  3431  			x.FUint = (uint)(z.C.UintV(r.DecodeUint64(), codecSelferBitsize19781))
  3432  		case "FptrUint":
  3433  			if r.TryNil() {
  3434  				if x.FptrUint != nil { // remove the if-true
  3435  					x.FptrUint = nil
  3436  				}
  3437  			} else {
  3438  				if x.FptrUint == nil {
  3439  					x.FptrUint = new(uint)
  3440  				}
  3441  				*x.FptrUint = (uint)(z.C.UintV(r.DecodeUint64(), codecSelferBitsize19781))
  3442  			}
  3443  		case "FUint8":
  3444  			x.FUint8 = (uint8)(z.C.UintV(r.DecodeUint64(), 8))
  3445  		case "FptrUint8":
  3446  			if r.TryNil() {
  3447  				if x.FptrUint8 != nil { // remove the if-true
  3448  					x.FptrUint8 = nil
  3449  				}
  3450  			} else {
  3451  				if x.FptrUint8 == nil {
  3452  					x.FptrUint8 = new(uint8)
  3453  				}
  3454  				*x.FptrUint8 = (uint8)(z.C.UintV(r.DecodeUint64(), 8))
  3455  			}
  3456  		case "FUint16":
  3457  			x.FUint16 = (uint16)(z.C.UintV(r.DecodeUint64(), 16))
  3458  		case "FptrUint16":
  3459  			if r.TryNil() {
  3460  				if x.FptrUint16 != nil { // remove the if-true
  3461  					x.FptrUint16 = nil
  3462  				}
  3463  			} else {
  3464  				if x.FptrUint16 == nil {
  3465  					x.FptrUint16 = new(uint16)
  3466  				}
  3467  				*x.FptrUint16 = (uint16)(z.C.UintV(r.DecodeUint64(), 16))
  3468  			}
  3469  		case "FUint32":
  3470  			x.FUint32 = (uint32)(z.C.UintV(r.DecodeUint64(), 32))
  3471  		case "FptrUint32":
  3472  			if r.TryNil() {
  3473  				if x.FptrUint32 != nil { // remove the if-true
  3474  					x.FptrUint32 = nil
  3475  				}
  3476  			} else {
  3477  				if x.FptrUint32 == nil {
  3478  					x.FptrUint32 = new(uint32)
  3479  				}
  3480  				*x.FptrUint32 = (uint32)(z.C.UintV(r.DecodeUint64(), 32))
  3481  			}
  3482  		case "FUint64":
  3483  			x.FUint64 = (uint64)(r.DecodeUint64())
  3484  		case "FptrUint64":
  3485  			if r.TryNil() {
  3486  				if x.FptrUint64 != nil { // remove the if-true
  3487  					x.FptrUint64 = nil
  3488  				}
  3489  			} else {
  3490  				if x.FptrUint64 == nil {
  3491  					x.FptrUint64 = new(uint64)
  3492  				}
  3493  				*x.FptrUint64 = (uint64)(r.DecodeUint64())
  3494  			}
  3495  		case "FUintptr":
  3496  			x.FUintptr = (uintptr)(z.C.UintV(r.DecodeUint64(), codecSelferBitsize19781))
  3497  		case "FptrUintptr":
  3498  			if r.TryNil() {
  3499  				if x.FptrUintptr != nil { // remove the if-true
  3500  					x.FptrUintptr = nil
  3501  				}
  3502  			} else {
  3503  				if x.FptrUintptr == nil {
  3504  					x.FptrUintptr = new(uintptr)
  3505  				}
  3506  				*x.FptrUintptr = (uintptr)(z.C.UintV(r.DecodeUint64(), codecSelferBitsize19781))
  3507  			}
  3508  		case "FInt":
  3509  			x.FInt = (int)(z.C.IntV(r.DecodeInt64(), codecSelferBitsize19781))
  3510  		case "FptrInt":
  3511  			if r.TryNil() {
  3512  				if x.FptrInt != nil { // remove the if-true
  3513  					x.FptrInt = nil
  3514  				}
  3515  			} else {
  3516  				if x.FptrInt == nil {
  3517  					x.FptrInt = new(int)
  3518  				}
  3519  				*x.FptrInt = (int)(z.C.IntV(r.DecodeInt64(), codecSelferBitsize19781))
  3520  			}
  3521  		case "FInt8":
  3522  			x.FInt8 = (int8)(z.C.IntV(r.DecodeInt64(), 8))
  3523  		case "FptrInt8":
  3524  			if r.TryNil() {
  3525  				if x.FptrInt8 != nil { // remove the if-true
  3526  					x.FptrInt8 = nil
  3527  				}
  3528  			} else {
  3529  				if x.FptrInt8 == nil {
  3530  					x.FptrInt8 = new(int8)
  3531  				}
  3532  				*x.FptrInt8 = (int8)(z.C.IntV(r.DecodeInt64(), 8))
  3533  			}
  3534  		case "FInt16":
  3535  			x.FInt16 = (int16)(z.C.IntV(r.DecodeInt64(), 16))
  3536  		case "FptrInt16":
  3537  			if r.TryNil() {
  3538  				if x.FptrInt16 != nil { // remove the if-true
  3539  					x.FptrInt16 = nil
  3540  				}
  3541  			} else {
  3542  				if x.FptrInt16 == nil {
  3543  					x.FptrInt16 = new(int16)
  3544  				}
  3545  				*x.FptrInt16 = (int16)(z.C.IntV(r.DecodeInt64(), 16))
  3546  			}
  3547  		case "FInt32":
  3548  			x.FInt32 = (int32)(z.C.IntV(r.DecodeInt64(), 32))
  3549  		case "FptrInt32":
  3550  			if r.TryNil() {
  3551  				if x.FptrInt32 != nil { // remove the if-true
  3552  					x.FptrInt32 = nil
  3553  				}
  3554  			} else {
  3555  				if x.FptrInt32 == nil {
  3556  					x.FptrInt32 = new(int32)
  3557  				}
  3558  				*x.FptrInt32 = (int32)(z.C.IntV(r.DecodeInt64(), 32))
  3559  			}
  3560  		case "FInt64":
  3561  			x.FInt64 = (int64)(r.DecodeInt64())
  3562  		case "FptrInt64":
  3563  			if r.TryNil() {
  3564  				if x.FptrInt64 != nil { // remove the if-true
  3565  					x.FptrInt64 = nil
  3566  				}
  3567  			} else {
  3568  				if x.FptrInt64 == nil {
  3569  					x.FptrInt64 = new(int64)
  3570  				}
  3571  				*x.FptrInt64 = (int64)(r.DecodeInt64())
  3572  			}
  3573  		case "FBool":
  3574  			x.FBool = (bool)(r.DecodeBool())
  3575  		case "FptrBool":
  3576  			if r.TryNil() {
  3577  				if x.FptrBool != nil { // remove the if-true
  3578  					x.FptrBool = nil
  3579  				}
  3580  			} else {
  3581  				if x.FptrBool == nil {
  3582  					x.FptrBool = new(bool)
  3583  				}
  3584  				*x.FptrBool = (bool)(r.DecodeBool())
  3585  			}
  3586  		case "FSliceIntf":
  3587  			z.F.DecSliceIntfX(&x.FSliceIntf, d)
  3588  		case "FptrSliceIntf":
  3589  			if r.TryNil() {
  3590  				if x.FptrSliceIntf != nil { // remove the if-true
  3591  					x.FptrSliceIntf = nil
  3592  				}
  3593  			} else {
  3594  				if x.FptrSliceIntf == nil {
  3595  					x.FptrSliceIntf = new([]interface{})
  3596  				}
  3597  				z.F.DecSliceIntfX(x.FptrSliceIntf, d)
  3598  			}
  3599  		case "FSliceString":
  3600  			z.F.DecSliceStringX(&x.FSliceString, d)
  3601  		case "FptrSliceString":
  3602  			if r.TryNil() {
  3603  				if x.FptrSliceString != nil { // remove the if-true
  3604  					x.FptrSliceString = nil
  3605  				}
  3606  			} else {
  3607  				if x.FptrSliceString == nil {
  3608  					x.FptrSliceString = new([]string)
  3609  				}
  3610  				z.F.DecSliceStringX(x.FptrSliceString, d)
  3611  			}
  3612  		case "FSliceBytes":
  3613  			z.F.DecSliceBytesX(&x.FSliceBytes, d)
  3614  		case "FptrSliceBytes":
  3615  			if r.TryNil() {
  3616  				if x.FptrSliceBytes != nil { // remove the if-true
  3617  					x.FptrSliceBytes = nil
  3618  				}
  3619  			} else {
  3620  				if x.FptrSliceBytes == nil {
  3621  					x.FptrSliceBytes = new([][]uint8)
  3622  				}
  3623  				z.F.DecSliceBytesX(x.FptrSliceBytes, d)
  3624  			}
  3625  		case "FSliceFloat32":
  3626  			z.F.DecSliceFloat32X(&x.FSliceFloat32, d)
  3627  		case "FptrSliceFloat32":
  3628  			if r.TryNil() {
  3629  				if x.FptrSliceFloat32 != nil { // remove the if-true
  3630  					x.FptrSliceFloat32 = nil
  3631  				}
  3632  			} else {
  3633  				if x.FptrSliceFloat32 == nil {
  3634  					x.FptrSliceFloat32 = new([]float32)
  3635  				}
  3636  				z.F.DecSliceFloat32X(x.FptrSliceFloat32, d)
  3637  			}
  3638  		case "FSliceFloat64":
  3639  			z.F.DecSliceFloat64X(&x.FSliceFloat64, d)
  3640  		case "FptrSliceFloat64":
  3641  			if r.TryNil() {
  3642  				if x.FptrSliceFloat64 != nil { // remove the if-true
  3643  					x.FptrSliceFloat64 = nil
  3644  				}
  3645  			} else {
  3646  				if x.FptrSliceFloat64 == nil {
  3647  					x.FptrSliceFloat64 = new([]float64)
  3648  				}
  3649  				z.F.DecSliceFloat64X(x.FptrSliceFloat64, d)
  3650  			}
  3651  		case "FSliceUint8":
  3652  			x.FSliceUint8 = z.DecodeBytesInto(([]byte)(x.FSliceUint8))
  3653  		case "FptrSliceUint8":
  3654  			if r.TryNil() {
  3655  				if x.FptrSliceUint8 != nil { // remove the if-true
  3656  					x.FptrSliceUint8 = nil
  3657  				}
  3658  			} else {
  3659  				if x.FptrSliceUint8 == nil {
  3660  					x.FptrSliceUint8 = new([]uint8)
  3661  				}
  3662  				*x.FptrSliceUint8 = z.DecodeBytesInto(*(*[]byte)(x.FptrSliceUint8))
  3663  			}
  3664  		case "FSliceUint64":
  3665  			z.F.DecSliceUint64X(&x.FSliceUint64, d)
  3666  		case "FptrSliceUint64":
  3667  			if r.TryNil() {
  3668  				if x.FptrSliceUint64 != nil { // remove the if-true
  3669  					x.FptrSliceUint64 = nil
  3670  				}
  3671  			} else {
  3672  				if x.FptrSliceUint64 == nil {
  3673  					x.FptrSliceUint64 = new([]uint64)
  3674  				}
  3675  				z.F.DecSliceUint64X(x.FptrSliceUint64, d)
  3676  			}
  3677  		case "FSliceInt":
  3678  			z.F.DecSliceIntX(&x.FSliceInt, d)
  3679  		case "FptrSliceInt":
  3680  			if r.TryNil() {
  3681  				if x.FptrSliceInt != nil { // remove the if-true
  3682  					x.FptrSliceInt = nil
  3683  				}
  3684  			} else {
  3685  				if x.FptrSliceInt == nil {
  3686  					x.FptrSliceInt = new([]int)
  3687  				}
  3688  				z.F.DecSliceIntX(x.FptrSliceInt, d)
  3689  			}
  3690  		case "FSliceInt32":
  3691  			z.F.DecSliceInt32X(&x.FSliceInt32, d)
  3692  		case "FptrSliceInt32":
  3693  			if r.TryNil() {
  3694  				if x.FptrSliceInt32 != nil { // remove the if-true
  3695  					x.FptrSliceInt32 = nil
  3696  				}
  3697  			} else {
  3698  				if x.FptrSliceInt32 == nil {
  3699  					x.FptrSliceInt32 = new([]int32)
  3700  				}
  3701  				z.F.DecSliceInt32X(x.FptrSliceInt32, d)
  3702  			}
  3703  		case "FSliceInt64":
  3704  			z.F.DecSliceInt64X(&x.FSliceInt64, d)
  3705  		case "FptrSliceInt64":
  3706  			if r.TryNil() {
  3707  				if x.FptrSliceInt64 != nil { // remove the if-true
  3708  					x.FptrSliceInt64 = nil
  3709  				}
  3710  			} else {
  3711  				if x.FptrSliceInt64 == nil {
  3712  					x.FptrSliceInt64 = new([]int64)
  3713  				}
  3714  				z.F.DecSliceInt64X(x.FptrSliceInt64, d)
  3715  			}
  3716  		case "FSliceBool":
  3717  			z.F.DecSliceBoolX(&x.FSliceBool, d)
  3718  		case "FptrSliceBool":
  3719  			if r.TryNil() {
  3720  				if x.FptrSliceBool != nil { // remove the if-true
  3721  					x.FptrSliceBool = nil
  3722  				}
  3723  			} else {
  3724  				if x.FptrSliceBool == nil {
  3725  					x.FptrSliceBool = new([]bool)
  3726  				}
  3727  				z.F.DecSliceBoolX(x.FptrSliceBool, d)
  3728  			}
  3729  		case "FMapStringIntf":
  3730  			z.F.DecMapStringIntfX(&x.FMapStringIntf, d)
  3731  		case "FptrMapStringIntf":
  3732  			if r.TryNil() {
  3733  				if x.FptrMapStringIntf != nil { // remove the if-true
  3734  					x.FptrMapStringIntf = nil
  3735  				}
  3736  			} else {
  3737  				if x.FptrMapStringIntf == nil {
  3738  					x.FptrMapStringIntf = new(map[string]interface{})
  3739  				}
  3740  				z.F.DecMapStringIntfX(x.FptrMapStringIntf, d)
  3741  			}
  3742  		case "FMapStringString":
  3743  			z.F.DecMapStringStringX(&x.FMapStringString, d)
  3744  		case "FptrMapStringString":
  3745  			if r.TryNil() {
  3746  				if x.FptrMapStringString != nil { // remove the if-true
  3747  					x.FptrMapStringString = nil
  3748  				}
  3749  			} else {
  3750  				if x.FptrMapStringString == nil {
  3751  					x.FptrMapStringString = new(map[string]string)
  3752  				}
  3753  				z.F.DecMapStringStringX(x.FptrMapStringString, d)
  3754  			}
  3755  		case "FMapStringBytes":
  3756  			z.F.DecMapStringBytesX(&x.FMapStringBytes, d)
  3757  		case "FptrMapStringBytes":
  3758  			if r.TryNil() {
  3759  				if x.FptrMapStringBytes != nil { // remove the if-true
  3760  					x.FptrMapStringBytes = nil
  3761  				}
  3762  			} else {
  3763  				if x.FptrMapStringBytes == nil {
  3764  					x.FptrMapStringBytes = new(map[string][]uint8)
  3765  				}
  3766  				z.F.DecMapStringBytesX(x.FptrMapStringBytes, d)
  3767  			}
  3768  		case "FMapStringUint8":
  3769  			z.F.DecMapStringUint8X(&x.FMapStringUint8, d)
  3770  		case "FptrMapStringUint8":
  3771  			if r.TryNil() {
  3772  				if x.FptrMapStringUint8 != nil { // remove the if-true
  3773  					x.FptrMapStringUint8 = nil
  3774  				}
  3775  			} else {
  3776  				if x.FptrMapStringUint8 == nil {
  3777  					x.FptrMapStringUint8 = new(map[string]uint8)
  3778  				}
  3779  				z.F.DecMapStringUint8X(x.FptrMapStringUint8, d)
  3780  			}
  3781  		case "FMapStringUint64":
  3782  			z.F.DecMapStringUint64X(&x.FMapStringUint64, d)
  3783  		case "FptrMapStringUint64":
  3784  			if r.TryNil() {
  3785  				if x.FptrMapStringUint64 != nil { // remove the if-true
  3786  					x.FptrMapStringUint64 = nil
  3787  				}
  3788  			} else {
  3789  				if x.FptrMapStringUint64 == nil {
  3790  					x.FptrMapStringUint64 = new(map[string]uint64)
  3791  				}
  3792  				z.F.DecMapStringUint64X(x.FptrMapStringUint64, d)
  3793  			}
  3794  		case "FMapStringInt":
  3795  			z.F.DecMapStringIntX(&x.FMapStringInt, d)
  3796  		case "FptrMapStringInt":
  3797  			if r.TryNil() {
  3798  				if x.FptrMapStringInt != nil { // remove the if-true
  3799  					x.FptrMapStringInt = nil
  3800  				}
  3801  			} else {
  3802  				if x.FptrMapStringInt == nil {
  3803  					x.FptrMapStringInt = new(map[string]int)
  3804  				}
  3805  				z.F.DecMapStringIntX(x.FptrMapStringInt, d)
  3806  			}
  3807  		case "FMapStringInt32":
  3808  			z.F.DecMapStringInt32X(&x.FMapStringInt32, d)
  3809  		case "FptrMapStringInt32":
  3810  			if r.TryNil() {
  3811  				if x.FptrMapStringInt32 != nil { // remove the if-true
  3812  					x.FptrMapStringInt32 = nil
  3813  				}
  3814  			} else {
  3815  				if x.FptrMapStringInt32 == nil {
  3816  					x.FptrMapStringInt32 = new(map[string]int32)
  3817  				}
  3818  				z.F.DecMapStringInt32X(x.FptrMapStringInt32, d)
  3819  			}
  3820  		case "FMapStringFloat64":
  3821  			z.F.DecMapStringFloat64X(&x.FMapStringFloat64, d)
  3822  		case "FptrMapStringFloat64":
  3823  			if r.TryNil() {
  3824  				if x.FptrMapStringFloat64 != nil { // remove the if-true
  3825  					x.FptrMapStringFloat64 = nil
  3826  				}
  3827  			} else {
  3828  				if x.FptrMapStringFloat64 == nil {
  3829  					x.FptrMapStringFloat64 = new(map[string]float64)
  3830  				}
  3831  				z.F.DecMapStringFloat64X(x.FptrMapStringFloat64, d)
  3832  			}
  3833  		case "FMapStringBool":
  3834  			z.F.DecMapStringBoolX(&x.FMapStringBool, d)
  3835  		case "FptrMapStringBool":
  3836  			if r.TryNil() {
  3837  				if x.FptrMapStringBool != nil { // remove the if-true
  3838  					x.FptrMapStringBool = nil
  3839  				}
  3840  			} else {
  3841  				if x.FptrMapStringBool == nil {
  3842  					x.FptrMapStringBool = new(map[string]bool)
  3843  				}
  3844  				z.F.DecMapStringBoolX(x.FptrMapStringBool, d)
  3845  			}
  3846  		case "FMapUint8Intf":
  3847  			z.F.DecMapUint8IntfX(&x.FMapUint8Intf, d)
  3848  		case "FptrMapUint8Intf":
  3849  			if r.TryNil() {
  3850  				if x.FptrMapUint8Intf != nil { // remove the if-true
  3851  					x.FptrMapUint8Intf = nil
  3852  				}
  3853  			} else {
  3854  				if x.FptrMapUint8Intf == nil {
  3855  					x.FptrMapUint8Intf = new(map[uint8]interface{})
  3856  				}
  3857  				z.F.DecMapUint8IntfX(x.FptrMapUint8Intf, d)
  3858  			}
  3859  		case "FMapUint8String":
  3860  			z.F.DecMapUint8StringX(&x.FMapUint8String, d)
  3861  		case "FptrMapUint8String":
  3862  			if r.TryNil() {
  3863  				if x.FptrMapUint8String != nil { // remove the if-true
  3864  					x.FptrMapUint8String = nil
  3865  				}
  3866  			} else {
  3867  				if x.FptrMapUint8String == nil {
  3868  					x.FptrMapUint8String = new(map[uint8]string)
  3869  				}
  3870  				z.F.DecMapUint8StringX(x.FptrMapUint8String, d)
  3871  			}
  3872  		case "FMapUint8Bytes":
  3873  			z.F.DecMapUint8BytesX(&x.FMapUint8Bytes, d)
  3874  		case "FptrMapUint8Bytes":
  3875  			if r.TryNil() {
  3876  				if x.FptrMapUint8Bytes != nil { // remove the if-true
  3877  					x.FptrMapUint8Bytes = nil
  3878  				}
  3879  			} else {
  3880  				if x.FptrMapUint8Bytes == nil {
  3881  					x.FptrMapUint8Bytes = new(map[uint8][]uint8)
  3882  				}
  3883  				z.F.DecMapUint8BytesX(x.FptrMapUint8Bytes, d)
  3884  			}
  3885  		case "FMapUint8Uint8":
  3886  			z.F.DecMapUint8Uint8X(&x.FMapUint8Uint8, d)
  3887  		case "FptrMapUint8Uint8":
  3888  			if r.TryNil() {
  3889  				if x.FptrMapUint8Uint8 != nil { // remove the if-true
  3890  					x.FptrMapUint8Uint8 = nil
  3891  				}
  3892  			} else {
  3893  				if x.FptrMapUint8Uint8 == nil {
  3894  					x.FptrMapUint8Uint8 = new(map[uint8]uint8)
  3895  				}
  3896  				z.F.DecMapUint8Uint8X(x.FptrMapUint8Uint8, d)
  3897  			}
  3898  		case "FMapUint8Uint64":
  3899  			z.F.DecMapUint8Uint64X(&x.FMapUint8Uint64, d)
  3900  		case "FptrMapUint8Uint64":
  3901  			if r.TryNil() {
  3902  				if x.FptrMapUint8Uint64 != nil { // remove the if-true
  3903  					x.FptrMapUint8Uint64 = nil
  3904  				}
  3905  			} else {
  3906  				if x.FptrMapUint8Uint64 == nil {
  3907  					x.FptrMapUint8Uint64 = new(map[uint8]uint64)
  3908  				}
  3909  				z.F.DecMapUint8Uint64X(x.FptrMapUint8Uint64, d)
  3910  			}
  3911  		case "FMapUint8Int":
  3912  			z.F.DecMapUint8IntX(&x.FMapUint8Int, d)
  3913  		case "FptrMapUint8Int":
  3914  			if r.TryNil() {
  3915  				if x.FptrMapUint8Int != nil { // remove the if-true
  3916  					x.FptrMapUint8Int = nil
  3917  				}
  3918  			} else {
  3919  				if x.FptrMapUint8Int == nil {
  3920  					x.FptrMapUint8Int = new(map[uint8]int)
  3921  				}
  3922  				z.F.DecMapUint8IntX(x.FptrMapUint8Int, d)
  3923  			}
  3924  		case "FMapUint8Int32":
  3925  			z.F.DecMapUint8Int32X(&x.FMapUint8Int32, d)
  3926  		case "FptrMapUint8Int32":
  3927  			if r.TryNil() {
  3928  				if x.FptrMapUint8Int32 != nil { // remove the if-true
  3929  					x.FptrMapUint8Int32 = nil
  3930  				}
  3931  			} else {
  3932  				if x.FptrMapUint8Int32 == nil {
  3933  					x.FptrMapUint8Int32 = new(map[uint8]int32)
  3934  				}
  3935  				z.F.DecMapUint8Int32X(x.FptrMapUint8Int32, d)
  3936  			}
  3937  		case "FMapUint8Float64":
  3938  			z.F.DecMapUint8Float64X(&x.FMapUint8Float64, d)
  3939  		case "FptrMapUint8Float64":
  3940  			if r.TryNil() {
  3941  				if x.FptrMapUint8Float64 != nil { // remove the if-true
  3942  					x.FptrMapUint8Float64 = nil
  3943  				}
  3944  			} else {
  3945  				if x.FptrMapUint8Float64 == nil {
  3946  					x.FptrMapUint8Float64 = new(map[uint8]float64)
  3947  				}
  3948  				z.F.DecMapUint8Float64X(x.FptrMapUint8Float64, d)
  3949  			}
  3950  		case "FMapUint8Bool":
  3951  			z.F.DecMapUint8BoolX(&x.FMapUint8Bool, d)
  3952  		case "FptrMapUint8Bool":
  3953  			if r.TryNil() {
  3954  				if x.FptrMapUint8Bool != nil { // remove the if-true
  3955  					x.FptrMapUint8Bool = nil
  3956  				}
  3957  			} else {
  3958  				if x.FptrMapUint8Bool == nil {
  3959  					x.FptrMapUint8Bool = new(map[uint8]bool)
  3960  				}
  3961  				z.F.DecMapUint8BoolX(x.FptrMapUint8Bool, d)
  3962  			}
  3963  		case "FMapUint64Intf":
  3964  			z.F.DecMapUint64IntfX(&x.FMapUint64Intf, d)
  3965  		case "FptrMapUint64Intf":
  3966  			if r.TryNil() {
  3967  				if x.FptrMapUint64Intf != nil { // remove the if-true
  3968  					x.FptrMapUint64Intf = nil
  3969  				}
  3970  			} else {
  3971  				if x.FptrMapUint64Intf == nil {
  3972  					x.FptrMapUint64Intf = new(map[uint64]interface{})
  3973  				}
  3974  				z.F.DecMapUint64IntfX(x.FptrMapUint64Intf, d)
  3975  			}
  3976  		case "FMapUint64String":
  3977  			z.F.DecMapUint64StringX(&x.FMapUint64String, d)
  3978  		case "FptrMapUint64String":
  3979  			if r.TryNil() {
  3980  				if x.FptrMapUint64String != nil { // remove the if-true
  3981  					x.FptrMapUint64String = nil
  3982  				}
  3983  			} else {
  3984  				if x.FptrMapUint64String == nil {
  3985  					x.FptrMapUint64String = new(map[uint64]string)
  3986  				}
  3987  				z.F.DecMapUint64StringX(x.FptrMapUint64String, d)
  3988  			}
  3989  		case "FMapUint64Bytes":
  3990  			z.F.DecMapUint64BytesX(&x.FMapUint64Bytes, d)
  3991  		case "FptrMapUint64Bytes":
  3992  			if r.TryNil() {
  3993  				if x.FptrMapUint64Bytes != nil { // remove the if-true
  3994  					x.FptrMapUint64Bytes = nil
  3995  				}
  3996  			} else {
  3997  				if x.FptrMapUint64Bytes == nil {
  3998  					x.FptrMapUint64Bytes = new(map[uint64][]uint8)
  3999  				}
  4000  				z.F.DecMapUint64BytesX(x.FptrMapUint64Bytes, d)
  4001  			}
  4002  		case "FMapUint64Uint8":
  4003  			z.F.DecMapUint64Uint8X(&x.FMapUint64Uint8, d)
  4004  		case "FptrMapUint64Uint8":
  4005  			if r.TryNil() {
  4006  				if x.FptrMapUint64Uint8 != nil { // remove the if-true
  4007  					x.FptrMapUint64Uint8 = nil
  4008  				}
  4009  			} else {
  4010  				if x.FptrMapUint64Uint8 == nil {
  4011  					x.FptrMapUint64Uint8 = new(map[uint64]uint8)
  4012  				}
  4013  				z.F.DecMapUint64Uint8X(x.FptrMapUint64Uint8, d)
  4014  			}
  4015  		case "FMapUint64Uint64":
  4016  			z.F.DecMapUint64Uint64X(&x.FMapUint64Uint64, d)
  4017  		case "FptrMapUint64Uint64":
  4018  			if r.TryNil() {
  4019  				if x.FptrMapUint64Uint64 != nil { // remove the if-true
  4020  					x.FptrMapUint64Uint64 = nil
  4021  				}
  4022  			} else {
  4023  				if x.FptrMapUint64Uint64 == nil {
  4024  					x.FptrMapUint64Uint64 = new(map[uint64]uint64)
  4025  				}
  4026  				z.F.DecMapUint64Uint64X(x.FptrMapUint64Uint64, d)
  4027  			}
  4028  		case "FMapUint64Int":
  4029  			z.F.DecMapUint64IntX(&x.FMapUint64Int, d)
  4030  		case "FptrMapUint64Int":
  4031  			if r.TryNil() {
  4032  				if x.FptrMapUint64Int != nil { // remove the if-true
  4033  					x.FptrMapUint64Int = nil
  4034  				}
  4035  			} else {
  4036  				if x.FptrMapUint64Int == nil {
  4037  					x.FptrMapUint64Int = new(map[uint64]int)
  4038  				}
  4039  				z.F.DecMapUint64IntX(x.FptrMapUint64Int, d)
  4040  			}
  4041  		case "FMapUint64Int32":
  4042  			z.F.DecMapUint64Int32X(&x.FMapUint64Int32, d)
  4043  		case "FptrMapUint64Int32":
  4044  			if r.TryNil() {
  4045  				if x.FptrMapUint64Int32 != nil { // remove the if-true
  4046  					x.FptrMapUint64Int32 = nil
  4047  				}
  4048  			} else {
  4049  				if x.FptrMapUint64Int32 == nil {
  4050  					x.FptrMapUint64Int32 = new(map[uint64]int32)
  4051  				}
  4052  				z.F.DecMapUint64Int32X(x.FptrMapUint64Int32, d)
  4053  			}
  4054  		case "FMapUint64Float64":
  4055  			z.F.DecMapUint64Float64X(&x.FMapUint64Float64, d)
  4056  		case "FptrMapUint64Float64":
  4057  			if r.TryNil() {
  4058  				if x.FptrMapUint64Float64 != nil { // remove the if-true
  4059  					x.FptrMapUint64Float64 = nil
  4060  				}
  4061  			} else {
  4062  				if x.FptrMapUint64Float64 == nil {
  4063  					x.FptrMapUint64Float64 = new(map[uint64]float64)
  4064  				}
  4065  				z.F.DecMapUint64Float64X(x.FptrMapUint64Float64, d)
  4066  			}
  4067  		case "FMapUint64Bool":
  4068  			z.F.DecMapUint64BoolX(&x.FMapUint64Bool, d)
  4069  		case "FptrMapUint64Bool":
  4070  			if r.TryNil() {
  4071  				if x.FptrMapUint64Bool != nil { // remove the if-true
  4072  					x.FptrMapUint64Bool = nil
  4073  				}
  4074  			} else {
  4075  				if x.FptrMapUint64Bool == nil {
  4076  					x.FptrMapUint64Bool = new(map[uint64]bool)
  4077  				}
  4078  				z.F.DecMapUint64BoolX(x.FptrMapUint64Bool, d)
  4079  			}
  4080  		case "FMapIntIntf":
  4081  			z.F.DecMapIntIntfX(&x.FMapIntIntf, d)
  4082  		case "FptrMapIntIntf":
  4083  			if r.TryNil() {
  4084  				if x.FptrMapIntIntf != nil { // remove the if-true
  4085  					x.FptrMapIntIntf = nil
  4086  				}
  4087  			} else {
  4088  				if x.FptrMapIntIntf == nil {
  4089  					x.FptrMapIntIntf = new(map[int]interface{})
  4090  				}
  4091  				z.F.DecMapIntIntfX(x.FptrMapIntIntf, d)
  4092  			}
  4093  		case "FMapIntString":
  4094  			z.F.DecMapIntStringX(&x.FMapIntString, d)
  4095  		case "FptrMapIntString":
  4096  			if r.TryNil() {
  4097  				if x.FptrMapIntString != nil { // remove the if-true
  4098  					x.FptrMapIntString = nil
  4099  				}
  4100  			} else {
  4101  				if x.FptrMapIntString == nil {
  4102  					x.FptrMapIntString = new(map[int]string)
  4103  				}
  4104  				z.F.DecMapIntStringX(x.FptrMapIntString, d)
  4105  			}
  4106  		case "FMapIntBytes":
  4107  			z.F.DecMapIntBytesX(&x.FMapIntBytes, d)
  4108  		case "FptrMapIntBytes":
  4109  			if r.TryNil() {
  4110  				if x.FptrMapIntBytes != nil { // remove the if-true
  4111  					x.FptrMapIntBytes = nil
  4112  				}
  4113  			} else {
  4114  				if x.FptrMapIntBytes == nil {
  4115  					x.FptrMapIntBytes = new(map[int][]uint8)
  4116  				}
  4117  				z.F.DecMapIntBytesX(x.FptrMapIntBytes, d)
  4118  			}
  4119  		case "FMapIntUint8":
  4120  			z.F.DecMapIntUint8X(&x.FMapIntUint8, d)
  4121  		case "FptrMapIntUint8":
  4122  			if r.TryNil() {
  4123  				if x.FptrMapIntUint8 != nil { // remove the if-true
  4124  					x.FptrMapIntUint8 = nil
  4125  				}
  4126  			} else {
  4127  				if x.FptrMapIntUint8 == nil {
  4128  					x.FptrMapIntUint8 = new(map[int]uint8)
  4129  				}
  4130  				z.F.DecMapIntUint8X(x.FptrMapIntUint8, d)
  4131  			}
  4132  		case "FMapIntUint64":
  4133  			z.F.DecMapIntUint64X(&x.FMapIntUint64, d)
  4134  		case "FptrMapIntUint64":
  4135  			if r.TryNil() {
  4136  				if x.FptrMapIntUint64 != nil { // remove the if-true
  4137  					x.FptrMapIntUint64 = nil
  4138  				}
  4139  			} else {
  4140  				if x.FptrMapIntUint64 == nil {
  4141  					x.FptrMapIntUint64 = new(map[int]uint64)
  4142  				}
  4143  				z.F.DecMapIntUint64X(x.FptrMapIntUint64, d)
  4144  			}
  4145  		case "FMapIntInt":
  4146  			z.F.DecMapIntIntX(&x.FMapIntInt, d)
  4147  		case "FptrMapIntInt":
  4148  			if r.TryNil() {
  4149  				if x.FptrMapIntInt != nil { // remove the if-true
  4150  					x.FptrMapIntInt = nil
  4151  				}
  4152  			} else {
  4153  				if x.FptrMapIntInt == nil {
  4154  					x.FptrMapIntInt = new(map[int]int)
  4155  				}
  4156  				z.F.DecMapIntIntX(x.FptrMapIntInt, d)
  4157  			}
  4158  		case "FMapIntInt32":
  4159  			z.F.DecMapIntInt32X(&x.FMapIntInt32, d)
  4160  		case "FptrMapIntInt32":
  4161  			if r.TryNil() {
  4162  				if x.FptrMapIntInt32 != nil { // remove the if-true
  4163  					x.FptrMapIntInt32 = nil
  4164  				}
  4165  			} else {
  4166  				if x.FptrMapIntInt32 == nil {
  4167  					x.FptrMapIntInt32 = new(map[int]int32)
  4168  				}
  4169  				z.F.DecMapIntInt32X(x.FptrMapIntInt32, d)
  4170  			}
  4171  		case "FMapIntFloat64":
  4172  			z.F.DecMapIntFloat64X(&x.FMapIntFloat64, d)
  4173  		case "FptrMapIntFloat64":
  4174  			if r.TryNil() {
  4175  				if x.FptrMapIntFloat64 != nil { // remove the if-true
  4176  					x.FptrMapIntFloat64 = nil
  4177  				}
  4178  			} else {
  4179  				if x.FptrMapIntFloat64 == nil {
  4180  					x.FptrMapIntFloat64 = new(map[int]float64)
  4181  				}
  4182  				z.F.DecMapIntFloat64X(x.FptrMapIntFloat64, d)
  4183  			}
  4184  		case "FMapIntBool":
  4185  			z.F.DecMapIntBoolX(&x.FMapIntBool, d)
  4186  		case "FptrMapIntBool":
  4187  			if r.TryNil() {
  4188  				if x.FptrMapIntBool != nil { // remove the if-true
  4189  					x.FptrMapIntBool = nil
  4190  				}
  4191  			} else {
  4192  				if x.FptrMapIntBool == nil {
  4193  					x.FptrMapIntBool = new(map[int]bool)
  4194  				}
  4195  				z.F.DecMapIntBoolX(x.FptrMapIntBool, d)
  4196  			}
  4197  		case "FMapInt32Intf":
  4198  			z.F.DecMapInt32IntfX(&x.FMapInt32Intf, d)
  4199  		case "FptrMapInt32Intf":
  4200  			if r.TryNil() {
  4201  				if x.FptrMapInt32Intf != nil { // remove the if-true
  4202  					x.FptrMapInt32Intf = nil
  4203  				}
  4204  			} else {
  4205  				if x.FptrMapInt32Intf == nil {
  4206  					x.FptrMapInt32Intf = new(map[int32]interface{})
  4207  				}
  4208  				z.F.DecMapInt32IntfX(x.FptrMapInt32Intf, d)
  4209  			}
  4210  		case "FMapInt32String":
  4211  			z.F.DecMapInt32StringX(&x.FMapInt32String, d)
  4212  		case "FptrMapInt32String":
  4213  			if r.TryNil() {
  4214  				if x.FptrMapInt32String != nil { // remove the if-true
  4215  					x.FptrMapInt32String = nil
  4216  				}
  4217  			} else {
  4218  				if x.FptrMapInt32String == nil {
  4219  					x.FptrMapInt32String = new(map[int32]string)
  4220  				}
  4221  				z.F.DecMapInt32StringX(x.FptrMapInt32String, d)
  4222  			}
  4223  		case "FMapInt32Bytes":
  4224  			z.F.DecMapInt32BytesX(&x.FMapInt32Bytes, d)
  4225  		case "FptrMapInt32Bytes":
  4226  			if r.TryNil() {
  4227  				if x.FptrMapInt32Bytes != nil { // remove the if-true
  4228  					x.FptrMapInt32Bytes = nil
  4229  				}
  4230  			} else {
  4231  				if x.FptrMapInt32Bytes == nil {
  4232  					x.FptrMapInt32Bytes = new(map[int32][]uint8)
  4233  				}
  4234  				z.F.DecMapInt32BytesX(x.FptrMapInt32Bytes, d)
  4235  			}
  4236  		case "FMapInt32Uint8":
  4237  			z.F.DecMapInt32Uint8X(&x.FMapInt32Uint8, d)
  4238  		case "FptrMapInt32Uint8":
  4239  			if r.TryNil() {
  4240  				if x.FptrMapInt32Uint8 != nil { // remove the if-true
  4241  					x.FptrMapInt32Uint8 = nil
  4242  				}
  4243  			} else {
  4244  				if x.FptrMapInt32Uint8 == nil {
  4245  					x.FptrMapInt32Uint8 = new(map[int32]uint8)
  4246  				}
  4247  				z.F.DecMapInt32Uint8X(x.FptrMapInt32Uint8, d)
  4248  			}
  4249  		case "FMapInt32Uint64":
  4250  			z.F.DecMapInt32Uint64X(&x.FMapInt32Uint64, d)
  4251  		case "FptrMapInt32Uint64":
  4252  			if r.TryNil() {
  4253  				if x.FptrMapInt32Uint64 != nil { // remove the if-true
  4254  					x.FptrMapInt32Uint64 = nil
  4255  				}
  4256  			} else {
  4257  				if x.FptrMapInt32Uint64 == nil {
  4258  					x.FptrMapInt32Uint64 = new(map[int32]uint64)
  4259  				}
  4260  				z.F.DecMapInt32Uint64X(x.FptrMapInt32Uint64, d)
  4261  			}
  4262  		case "FMapInt32Int":
  4263  			z.F.DecMapInt32IntX(&x.FMapInt32Int, d)
  4264  		case "FptrMapInt32Int":
  4265  			if r.TryNil() {
  4266  				if x.FptrMapInt32Int != nil { // remove the if-true
  4267  					x.FptrMapInt32Int = nil
  4268  				}
  4269  			} else {
  4270  				if x.FptrMapInt32Int == nil {
  4271  					x.FptrMapInt32Int = new(map[int32]int)
  4272  				}
  4273  				z.F.DecMapInt32IntX(x.FptrMapInt32Int, d)
  4274  			}
  4275  		case "FMapInt32Int32":
  4276  			z.F.DecMapInt32Int32X(&x.FMapInt32Int32, d)
  4277  		case "FptrMapInt32Int32":
  4278  			if r.TryNil() {
  4279  				if x.FptrMapInt32Int32 != nil { // remove the if-true
  4280  					x.FptrMapInt32Int32 = nil
  4281  				}
  4282  			} else {
  4283  				if x.FptrMapInt32Int32 == nil {
  4284  					x.FptrMapInt32Int32 = new(map[int32]int32)
  4285  				}
  4286  				z.F.DecMapInt32Int32X(x.FptrMapInt32Int32, d)
  4287  			}
  4288  		case "FMapInt32Float64":
  4289  			z.F.DecMapInt32Float64X(&x.FMapInt32Float64, d)
  4290  		case "FptrMapInt32Float64":
  4291  			if r.TryNil() {
  4292  				if x.FptrMapInt32Float64 != nil { // remove the if-true
  4293  					x.FptrMapInt32Float64 = nil
  4294  				}
  4295  			} else {
  4296  				if x.FptrMapInt32Float64 == nil {
  4297  					x.FptrMapInt32Float64 = new(map[int32]float64)
  4298  				}
  4299  				z.F.DecMapInt32Float64X(x.FptrMapInt32Float64, d)
  4300  			}
  4301  		case "FMapInt32Bool":
  4302  			z.F.DecMapInt32BoolX(&x.FMapInt32Bool, d)
  4303  		case "FptrMapInt32Bool":
  4304  			if r.TryNil() {
  4305  				if x.FptrMapInt32Bool != nil { // remove the if-true
  4306  					x.FptrMapInt32Bool = nil
  4307  				}
  4308  			} else {
  4309  				if x.FptrMapInt32Bool == nil {
  4310  					x.FptrMapInt32Bool = new(map[int32]bool)
  4311  				}
  4312  				z.F.DecMapInt32BoolX(x.FptrMapInt32Bool, d)
  4313  			}
  4314  		default:
  4315  			z.DecStructFieldNotFound(-1, string(yys3))
  4316  		} // end switch yys3
  4317  	} // end for yyj3
  4318  }
  4319  
  4320  func (x *TestMammoth2) codecDecodeSelfFromArray(l int, d *Decoder) {
  4321  	var h codecSelfer19781
  4322  	z, r := GenHelper().Decoder(d)
  4323  	_, _, _ = h, z, r
  4324  	var yyj281 int
  4325  	var yyb281 bool
  4326  	var yyhl281 bool = l >= 0
  4327  	yyj281++
  4328  	if yyhl281 {
  4329  		yyb281 = yyj281 > l
  4330  	} else {
  4331  		yyb281 = z.DecCheckBreak()
  4332  	}
  4333  	if yyb281 {
  4334  		z.DecReadArrayEnd()
  4335  		return
  4336  	}
  4337  	z.DecReadArrayElem()
  4338  	z.DecFallback(&x.FIntf, true)
  4339  	yyj281++
  4340  	if yyhl281 {
  4341  		yyb281 = yyj281 > l
  4342  	} else {
  4343  		yyb281 = z.DecCheckBreak()
  4344  	}
  4345  	if yyb281 {
  4346  		z.DecReadArrayEnd()
  4347  		return
  4348  	}
  4349  	z.DecReadArrayElem()
  4350  	if r.TryNil() {
  4351  		if x.FptrIntf != nil { // remove the if-true
  4352  			x.FptrIntf = nil
  4353  		}
  4354  	} else {
  4355  		if x.FptrIntf == nil {
  4356  			x.FptrIntf = new(interface{})
  4357  		}
  4358  		z.DecFallback(x.FptrIntf, true)
  4359  	}
  4360  	yyj281++
  4361  	if yyhl281 {
  4362  		yyb281 = yyj281 > l
  4363  	} else {
  4364  		yyb281 = z.DecCheckBreak()
  4365  	}
  4366  	if yyb281 {
  4367  		z.DecReadArrayEnd()
  4368  		return
  4369  	}
  4370  	z.DecReadArrayElem()
  4371  	x.FString = (string)(z.DecStringZC(r.DecodeStringAsBytes()))
  4372  	yyj281++
  4373  	if yyhl281 {
  4374  		yyb281 = yyj281 > l
  4375  	} else {
  4376  		yyb281 = z.DecCheckBreak()
  4377  	}
  4378  	if yyb281 {
  4379  		z.DecReadArrayEnd()
  4380  		return
  4381  	}
  4382  	z.DecReadArrayElem()
  4383  	if r.TryNil() {
  4384  		if x.FptrString != nil { // remove the if-true
  4385  			x.FptrString = nil
  4386  		}
  4387  	} else {
  4388  		if x.FptrString == nil {
  4389  			x.FptrString = new(string)
  4390  		}
  4391  		*x.FptrString = (string)(z.DecStringZC(r.DecodeStringAsBytes()))
  4392  	}
  4393  	yyj281++
  4394  	if yyhl281 {
  4395  		yyb281 = yyj281 > l
  4396  	} else {
  4397  		yyb281 = z.DecCheckBreak()
  4398  	}
  4399  	if yyb281 {
  4400  		z.DecReadArrayEnd()
  4401  		return
  4402  	}
  4403  	z.DecReadArrayElem()
  4404  	x.FBytes = z.DecodeBytesInto(([]byte)(x.FBytes))
  4405  	yyj281++
  4406  	if yyhl281 {
  4407  		yyb281 = yyj281 > l
  4408  	} else {
  4409  		yyb281 = z.DecCheckBreak()
  4410  	}
  4411  	if yyb281 {
  4412  		z.DecReadArrayEnd()
  4413  		return
  4414  	}
  4415  	z.DecReadArrayElem()
  4416  	if r.TryNil() {
  4417  		if x.FptrBytes != nil { // remove the if-true
  4418  			x.FptrBytes = nil
  4419  		}
  4420  	} else {
  4421  		if x.FptrBytes == nil {
  4422  			x.FptrBytes = new([]uint8)
  4423  		}
  4424  		*x.FptrBytes = z.DecodeBytesInto(*(*[]byte)(x.FptrBytes))
  4425  	}
  4426  	yyj281++
  4427  	if yyhl281 {
  4428  		yyb281 = yyj281 > l
  4429  	} else {
  4430  		yyb281 = z.DecCheckBreak()
  4431  	}
  4432  	if yyb281 {
  4433  		z.DecReadArrayEnd()
  4434  		return
  4435  	}
  4436  	z.DecReadArrayElem()
  4437  	x.FFloat32 = (float32)(z.DecDecodeFloat32())
  4438  	yyj281++
  4439  	if yyhl281 {
  4440  		yyb281 = yyj281 > l
  4441  	} else {
  4442  		yyb281 = z.DecCheckBreak()
  4443  	}
  4444  	if yyb281 {
  4445  		z.DecReadArrayEnd()
  4446  		return
  4447  	}
  4448  	z.DecReadArrayElem()
  4449  	if r.TryNil() {
  4450  		if x.FptrFloat32 != nil { // remove the if-true
  4451  			x.FptrFloat32 = nil
  4452  		}
  4453  	} else {
  4454  		if x.FptrFloat32 == nil {
  4455  			x.FptrFloat32 = new(float32)
  4456  		}
  4457  		*x.FptrFloat32 = (float32)(z.DecDecodeFloat32())
  4458  	}
  4459  	yyj281++
  4460  	if yyhl281 {
  4461  		yyb281 = yyj281 > l
  4462  	} else {
  4463  		yyb281 = z.DecCheckBreak()
  4464  	}
  4465  	if yyb281 {
  4466  		z.DecReadArrayEnd()
  4467  		return
  4468  	}
  4469  	z.DecReadArrayElem()
  4470  	x.FFloat64 = (float64)(r.DecodeFloat64())
  4471  	yyj281++
  4472  	if yyhl281 {
  4473  		yyb281 = yyj281 > l
  4474  	} else {
  4475  		yyb281 = z.DecCheckBreak()
  4476  	}
  4477  	if yyb281 {
  4478  		z.DecReadArrayEnd()
  4479  		return
  4480  	}
  4481  	z.DecReadArrayElem()
  4482  	if r.TryNil() {
  4483  		if x.FptrFloat64 != nil { // remove the if-true
  4484  			x.FptrFloat64 = nil
  4485  		}
  4486  	} else {
  4487  		if x.FptrFloat64 == nil {
  4488  			x.FptrFloat64 = new(float64)
  4489  		}
  4490  		*x.FptrFloat64 = (float64)(r.DecodeFloat64())
  4491  	}
  4492  	yyj281++
  4493  	if yyhl281 {
  4494  		yyb281 = yyj281 > l
  4495  	} else {
  4496  		yyb281 = z.DecCheckBreak()
  4497  	}
  4498  	if yyb281 {
  4499  		z.DecReadArrayEnd()
  4500  		return
  4501  	}
  4502  	z.DecReadArrayElem()
  4503  	x.FUint = (uint)(z.C.UintV(r.DecodeUint64(), codecSelferBitsize19781))
  4504  	yyj281++
  4505  	if yyhl281 {
  4506  		yyb281 = yyj281 > l
  4507  	} else {
  4508  		yyb281 = z.DecCheckBreak()
  4509  	}
  4510  	if yyb281 {
  4511  		z.DecReadArrayEnd()
  4512  		return
  4513  	}
  4514  	z.DecReadArrayElem()
  4515  	if r.TryNil() {
  4516  		if x.FptrUint != nil { // remove the if-true
  4517  			x.FptrUint = nil
  4518  		}
  4519  	} else {
  4520  		if x.FptrUint == nil {
  4521  			x.FptrUint = new(uint)
  4522  		}
  4523  		*x.FptrUint = (uint)(z.C.UintV(r.DecodeUint64(), codecSelferBitsize19781))
  4524  	}
  4525  	yyj281++
  4526  	if yyhl281 {
  4527  		yyb281 = yyj281 > l
  4528  	} else {
  4529  		yyb281 = z.DecCheckBreak()
  4530  	}
  4531  	if yyb281 {
  4532  		z.DecReadArrayEnd()
  4533  		return
  4534  	}
  4535  	z.DecReadArrayElem()
  4536  	x.FUint8 = (uint8)(z.C.UintV(r.DecodeUint64(), 8))
  4537  	yyj281++
  4538  	if yyhl281 {
  4539  		yyb281 = yyj281 > l
  4540  	} else {
  4541  		yyb281 = z.DecCheckBreak()
  4542  	}
  4543  	if yyb281 {
  4544  		z.DecReadArrayEnd()
  4545  		return
  4546  	}
  4547  	z.DecReadArrayElem()
  4548  	if r.TryNil() {
  4549  		if x.FptrUint8 != nil { // remove the if-true
  4550  			x.FptrUint8 = nil
  4551  		}
  4552  	} else {
  4553  		if x.FptrUint8 == nil {
  4554  			x.FptrUint8 = new(uint8)
  4555  		}
  4556  		*x.FptrUint8 = (uint8)(z.C.UintV(r.DecodeUint64(), 8))
  4557  	}
  4558  	yyj281++
  4559  	if yyhl281 {
  4560  		yyb281 = yyj281 > l
  4561  	} else {
  4562  		yyb281 = z.DecCheckBreak()
  4563  	}
  4564  	if yyb281 {
  4565  		z.DecReadArrayEnd()
  4566  		return
  4567  	}
  4568  	z.DecReadArrayElem()
  4569  	x.FUint16 = (uint16)(z.C.UintV(r.DecodeUint64(), 16))
  4570  	yyj281++
  4571  	if yyhl281 {
  4572  		yyb281 = yyj281 > l
  4573  	} else {
  4574  		yyb281 = z.DecCheckBreak()
  4575  	}
  4576  	if yyb281 {
  4577  		z.DecReadArrayEnd()
  4578  		return
  4579  	}
  4580  	z.DecReadArrayElem()
  4581  	if r.TryNil() {
  4582  		if x.FptrUint16 != nil { // remove the if-true
  4583  			x.FptrUint16 = nil
  4584  		}
  4585  	} else {
  4586  		if x.FptrUint16 == nil {
  4587  			x.FptrUint16 = new(uint16)
  4588  		}
  4589  		*x.FptrUint16 = (uint16)(z.C.UintV(r.DecodeUint64(), 16))
  4590  	}
  4591  	yyj281++
  4592  	if yyhl281 {
  4593  		yyb281 = yyj281 > l
  4594  	} else {
  4595  		yyb281 = z.DecCheckBreak()
  4596  	}
  4597  	if yyb281 {
  4598  		z.DecReadArrayEnd()
  4599  		return
  4600  	}
  4601  	z.DecReadArrayElem()
  4602  	x.FUint32 = (uint32)(z.C.UintV(r.DecodeUint64(), 32))
  4603  	yyj281++
  4604  	if yyhl281 {
  4605  		yyb281 = yyj281 > l
  4606  	} else {
  4607  		yyb281 = z.DecCheckBreak()
  4608  	}
  4609  	if yyb281 {
  4610  		z.DecReadArrayEnd()
  4611  		return
  4612  	}
  4613  	z.DecReadArrayElem()
  4614  	if r.TryNil() {
  4615  		if x.FptrUint32 != nil { // remove the if-true
  4616  			x.FptrUint32 = nil
  4617  		}
  4618  	} else {
  4619  		if x.FptrUint32 == nil {
  4620  			x.FptrUint32 = new(uint32)
  4621  		}
  4622  		*x.FptrUint32 = (uint32)(z.C.UintV(r.DecodeUint64(), 32))
  4623  	}
  4624  	yyj281++
  4625  	if yyhl281 {
  4626  		yyb281 = yyj281 > l
  4627  	} else {
  4628  		yyb281 = z.DecCheckBreak()
  4629  	}
  4630  	if yyb281 {
  4631  		z.DecReadArrayEnd()
  4632  		return
  4633  	}
  4634  	z.DecReadArrayElem()
  4635  	x.FUint64 = (uint64)(r.DecodeUint64())
  4636  	yyj281++
  4637  	if yyhl281 {
  4638  		yyb281 = yyj281 > l
  4639  	} else {
  4640  		yyb281 = z.DecCheckBreak()
  4641  	}
  4642  	if yyb281 {
  4643  		z.DecReadArrayEnd()
  4644  		return
  4645  	}
  4646  	z.DecReadArrayElem()
  4647  	if r.TryNil() {
  4648  		if x.FptrUint64 != nil { // remove the if-true
  4649  			x.FptrUint64 = nil
  4650  		}
  4651  	} else {
  4652  		if x.FptrUint64 == nil {
  4653  			x.FptrUint64 = new(uint64)
  4654  		}
  4655  		*x.FptrUint64 = (uint64)(r.DecodeUint64())
  4656  	}
  4657  	yyj281++
  4658  	if yyhl281 {
  4659  		yyb281 = yyj281 > l
  4660  	} else {
  4661  		yyb281 = z.DecCheckBreak()
  4662  	}
  4663  	if yyb281 {
  4664  		z.DecReadArrayEnd()
  4665  		return
  4666  	}
  4667  	z.DecReadArrayElem()
  4668  	x.FUintptr = (uintptr)(z.C.UintV(r.DecodeUint64(), codecSelferBitsize19781))
  4669  	yyj281++
  4670  	if yyhl281 {
  4671  		yyb281 = yyj281 > l
  4672  	} else {
  4673  		yyb281 = z.DecCheckBreak()
  4674  	}
  4675  	if yyb281 {
  4676  		z.DecReadArrayEnd()
  4677  		return
  4678  	}
  4679  	z.DecReadArrayElem()
  4680  	if r.TryNil() {
  4681  		if x.FptrUintptr != nil { // remove the if-true
  4682  			x.FptrUintptr = nil
  4683  		}
  4684  	} else {
  4685  		if x.FptrUintptr == nil {
  4686  			x.FptrUintptr = new(uintptr)
  4687  		}
  4688  		*x.FptrUintptr = (uintptr)(z.C.UintV(r.DecodeUint64(), codecSelferBitsize19781))
  4689  	}
  4690  	yyj281++
  4691  	if yyhl281 {
  4692  		yyb281 = yyj281 > l
  4693  	} else {
  4694  		yyb281 = z.DecCheckBreak()
  4695  	}
  4696  	if yyb281 {
  4697  		z.DecReadArrayEnd()
  4698  		return
  4699  	}
  4700  	z.DecReadArrayElem()
  4701  	x.FInt = (int)(z.C.IntV(r.DecodeInt64(), codecSelferBitsize19781))
  4702  	yyj281++
  4703  	if yyhl281 {
  4704  		yyb281 = yyj281 > l
  4705  	} else {
  4706  		yyb281 = z.DecCheckBreak()
  4707  	}
  4708  	if yyb281 {
  4709  		z.DecReadArrayEnd()
  4710  		return
  4711  	}
  4712  	z.DecReadArrayElem()
  4713  	if r.TryNil() {
  4714  		if x.FptrInt != nil { // remove the if-true
  4715  			x.FptrInt = nil
  4716  		}
  4717  	} else {
  4718  		if x.FptrInt == nil {
  4719  			x.FptrInt = new(int)
  4720  		}
  4721  		*x.FptrInt = (int)(z.C.IntV(r.DecodeInt64(), codecSelferBitsize19781))
  4722  	}
  4723  	yyj281++
  4724  	if yyhl281 {
  4725  		yyb281 = yyj281 > l
  4726  	} else {
  4727  		yyb281 = z.DecCheckBreak()
  4728  	}
  4729  	if yyb281 {
  4730  		z.DecReadArrayEnd()
  4731  		return
  4732  	}
  4733  	z.DecReadArrayElem()
  4734  	x.FInt8 = (int8)(z.C.IntV(r.DecodeInt64(), 8))
  4735  	yyj281++
  4736  	if yyhl281 {
  4737  		yyb281 = yyj281 > l
  4738  	} else {
  4739  		yyb281 = z.DecCheckBreak()
  4740  	}
  4741  	if yyb281 {
  4742  		z.DecReadArrayEnd()
  4743  		return
  4744  	}
  4745  	z.DecReadArrayElem()
  4746  	if r.TryNil() {
  4747  		if x.FptrInt8 != nil { // remove the if-true
  4748  			x.FptrInt8 = nil
  4749  		}
  4750  	} else {
  4751  		if x.FptrInt8 == nil {
  4752  			x.FptrInt8 = new(int8)
  4753  		}
  4754  		*x.FptrInt8 = (int8)(z.C.IntV(r.DecodeInt64(), 8))
  4755  	}
  4756  	yyj281++
  4757  	if yyhl281 {
  4758  		yyb281 = yyj281 > l
  4759  	} else {
  4760  		yyb281 = z.DecCheckBreak()
  4761  	}
  4762  	if yyb281 {
  4763  		z.DecReadArrayEnd()
  4764  		return
  4765  	}
  4766  	z.DecReadArrayElem()
  4767  	x.FInt16 = (int16)(z.C.IntV(r.DecodeInt64(), 16))
  4768  	yyj281++
  4769  	if yyhl281 {
  4770  		yyb281 = yyj281 > l
  4771  	} else {
  4772  		yyb281 = z.DecCheckBreak()
  4773  	}
  4774  	if yyb281 {
  4775  		z.DecReadArrayEnd()
  4776  		return
  4777  	}
  4778  	z.DecReadArrayElem()
  4779  	if r.TryNil() {
  4780  		if x.FptrInt16 != nil { // remove the if-true
  4781  			x.FptrInt16 = nil
  4782  		}
  4783  	} else {
  4784  		if x.FptrInt16 == nil {
  4785  			x.FptrInt16 = new(int16)
  4786  		}
  4787  		*x.FptrInt16 = (int16)(z.C.IntV(r.DecodeInt64(), 16))
  4788  	}
  4789  	yyj281++
  4790  	if yyhl281 {
  4791  		yyb281 = yyj281 > l
  4792  	} else {
  4793  		yyb281 = z.DecCheckBreak()
  4794  	}
  4795  	if yyb281 {
  4796  		z.DecReadArrayEnd()
  4797  		return
  4798  	}
  4799  	z.DecReadArrayElem()
  4800  	x.FInt32 = (int32)(z.C.IntV(r.DecodeInt64(), 32))
  4801  	yyj281++
  4802  	if yyhl281 {
  4803  		yyb281 = yyj281 > l
  4804  	} else {
  4805  		yyb281 = z.DecCheckBreak()
  4806  	}
  4807  	if yyb281 {
  4808  		z.DecReadArrayEnd()
  4809  		return
  4810  	}
  4811  	z.DecReadArrayElem()
  4812  	if r.TryNil() {
  4813  		if x.FptrInt32 != nil { // remove the if-true
  4814  			x.FptrInt32 = nil
  4815  		}
  4816  	} else {
  4817  		if x.FptrInt32 == nil {
  4818  			x.FptrInt32 = new(int32)
  4819  		}
  4820  		*x.FptrInt32 = (int32)(z.C.IntV(r.DecodeInt64(), 32))
  4821  	}
  4822  	yyj281++
  4823  	if yyhl281 {
  4824  		yyb281 = yyj281 > l
  4825  	} else {
  4826  		yyb281 = z.DecCheckBreak()
  4827  	}
  4828  	if yyb281 {
  4829  		z.DecReadArrayEnd()
  4830  		return
  4831  	}
  4832  	z.DecReadArrayElem()
  4833  	x.FInt64 = (int64)(r.DecodeInt64())
  4834  	yyj281++
  4835  	if yyhl281 {
  4836  		yyb281 = yyj281 > l
  4837  	} else {
  4838  		yyb281 = z.DecCheckBreak()
  4839  	}
  4840  	if yyb281 {
  4841  		z.DecReadArrayEnd()
  4842  		return
  4843  	}
  4844  	z.DecReadArrayElem()
  4845  	if r.TryNil() {
  4846  		if x.FptrInt64 != nil { // remove the if-true
  4847  			x.FptrInt64 = nil
  4848  		}
  4849  	} else {
  4850  		if x.FptrInt64 == nil {
  4851  			x.FptrInt64 = new(int64)
  4852  		}
  4853  		*x.FptrInt64 = (int64)(r.DecodeInt64())
  4854  	}
  4855  	yyj281++
  4856  	if yyhl281 {
  4857  		yyb281 = yyj281 > l
  4858  	} else {
  4859  		yyb281 = z.DecCheckBreak()
  4860  	}
  4861  	if yyb281 {
  4862  		z.DecReadArrayEnd()
  4863  		return
  4864  	}
  4865  	z.DecReadArrayElem()
  4866  	x.FBool = (bool)(r.DecodeBool())
  4867  	yyj281++
  4868  	if yyhl281 {
  4869  		yyb281 = yyj281 > l
  4870  	} else {
  4871  		yyb281 = z.DecCheckBreak()
  4872  	}
  4873  	if yyb281 {
  4874  		z.DecReadArrayEnd()
  4875  		return
  4876  	}
  4877  	z.DecReadArrayElem()
  4878  	if r.TryNil() {
  4879  		if x.FptrBool != nil { // remove the if-true
  4880  			x.FptrBool = nil
  4881  		}
  4882  	} else {
  4883  		if x.FptrBool == nil {
  4884  			x.FptrBool = new(bool)
  4885  		}
  4886  		*x.FptrBool = (bool)(r.DecodeBool())
  4887  	}
  4888  	yyj281++
  4889  	if yyhl281 {
  4890  		yyb281 = yyj281 > l
  4891  	} else {
  4892  		yyb281 = z.DecCheckBreak()
  4893  	}
  4894  	if yyb281 {
  4895  		z.DecReadArrayEnd()
  4896  		return
  4897  	}
  4898  	z.DecReadArrayElem()
  4899  	z.F.DecSliceIntfX(&x.FSliceIntf, d)
  4900  	yyj281++
  4901  	if yyhl281 {
  4902  		yyb281 = yyj281 > l
  4903  	} else {
  4904  		yyb281 = z.DecCheckBreak()
  4905  	}
  4906  	if yyb281 {
  4907  		z.DecReadArrayEnd()
  4908  		return
  4909  	}
  4910  	z.DecReadArrayElem()
  4911  	if r.TryNil() {
  4912  		if x.FptrSliceIntf != nil { // remove the if-true
  4913  			x.FptrSliceIntf = nil
  4914  		}
  4915  	} else {
  4916  		if x.FptrSliceIntf == nil {
  4917  			x.FptrSliceIntf = new([]interface{})
  4918  		}
  4919  		z.F.DecSliceIntfX(x.FptrSliceIntf, d)
  4920  	}
  4921  	yyj281++
  4922  	if yyhl281 {
  4923  		yyb281 = yyj281 > l
  4924  	} else {
  4925  		yyb281 = z.DecCheckBreak()
  4926  	}
  4927  	if yyb281 {
  4928  		z.DecReadArrayEnd()
  4929  		return
  4930  	}
  4931  	z.DecReadArrayElem()
  4932  	z.F.DecSliceStringX(&x.FSliceString, d)
  4933  	yyj281++
  4934  	if yyhl281 {
  4935  		yyb281 = yyj281 > l
  4936  	} else {
  4937  		yyb281 = z.DecCheckBreak()
  4938  	}
  4939  	if yyb281 {
  4940  		z.DecReadArrayEnd()
  4941  		return
  4942  	}
  4943  	z.DecReadArrayElem()
  4944  	if r.TryNil() {
  4945  		if x.FptrSliceString != nil { // remove the if-true
  4946  			x.FptrSliceString = nil
  4947  		}
  4948  	} else {
  4949  		if x.FptrSliceString == nil {
  4950  			x.FptrSliceString = new([]string)
  4951  		}
  4952  		z.F.DecSliceStringX(x.FptrSliceString, d)
  4953  	}
  4954  	yyj281++
  4955  	if yyhl281 {
  4956  		yyb281 = yyj281 > l
  4957  	} else {
  4958  		yyb281 = z.DecCheckBreak()
  4959  	}
  4960  	if yyb281 {
  4961  		z.DecReadArrayEnd()
  4962  		return
  4963  	}
  4964  	z.DecReadArrayElem()
  4965  	z.F.DecSliceBytesX(&x.FSliceBytes, d)
  4966  	yyj281++
  4967  	if yyhl281 {
  4968  		yyb281 = yyj281 > l
  4969  	} else {
  4970  		yyb281 = z.DecCheckBreak()
  4971  	}
  4972  	if yyb281 {
  4973  		z.DecReadArrayEnd()
  4974  		return
  4975  	}
  4976  	z.DecReadArrayElem()
  4977  	if r.TryNil() {
  4978  		if x.FptrSliceBytes != nil { // remove the if-true
  4979  			x.FptrSliceBytes = nil
  4980  		}
  4981  	} else {
  4982  		if x.FptrSliceBytes == nil {
  4983  			x.FptrSliceBytes = new([][]uint8)
  4984  		}
  4985  		z.F.DecSliceBytesX(x.FptrSliceBytes, d)
  4986  	}
  4987  	yyj281++
  4988  	if yyhl281 {
  4989  		yyb281 = yyj281 > l
  4990  	} else {
  4991  		yyb281 = z.DecCheckBreak()
  4992  	}
  4993  	if yyb281 {
  4994  		z.DecReadArrayEnd()
  4995  		return
  4996  	}
  4997  	z.DecReadArrayElem()
  4998  	z.F.DecSliceFloat32X(&x.FSliceFloat32, d)
  4999  	yyj281++
  5000  	if yyhl281 {
  5001  		yyb281 = yyj281 > l
  5002  	} else {
  5003  		yyb281 = z.DecCheckBreak()
  5004  	}
  5005  	if yyb281 {
  5006  		z.DecReadArrayEnd()
  5007  		return
  5008  	}
  5009  	z.DecReadArrayElem()
  5010  	if r.TryNil() {
  5011  		if x.FptrSliceFloat32 != nil { // remove the if-true
  5012  			x.FptrSliceFloat32 = nil
  5013  		}
  5014  	} else {
  5015  		if x.FptrSliceFloat32 == nil {
  5016  			x.FptrSliceFloat32 = new([]float32)
  5017  		}
  5018  		z.F.DecSliceFloat32X(x.FptrSliceFloat32, d)
  5019  	}
  5020  	yyj281++
  5021  	if yyhl281 {
  5022  		yyb281 = yyj281 > l
  5023  	} else {
  5024  		yyb281 = z.DecCheckBreak()
  5025  	}
  5026  	if yyb281 {
  5027  		z.DecReadArrayEnd()
  5028  		return
  5029  	}
  5030  	z.DecReadArrayElem()
  5031  	z.F.DecSliceFloat64X(&x.FSliceFloat64, d)
  5032  	yyj281++
  5033  	if yyhl281 {
  5034  		yyb281 = yyj281 > l
  5035  	} else {
  5036  		yyb281 = z.DecCheckBreak()
  5037  	}
  5038  	if yyb281 {
  5039  		z.DecReadArrayEnd()
  5040  		return
  5041  	}
  5042  	z.DecReadArrayElem()
  5043  	if r.TryNil() {
  5044  		if x.FptrSliceFloat64 != nil { // remove the if-true
  5045  			x.FptrSliceFloat64 = nil
  5046  		}
  5047  	} else {
  5048  		if x.FptrSliceFloat64 == nil {
  5049  			x.FptrSliceFloat64 = new([]float64)
  5050  		}
  5051  		z.F.DecSliceFloat64X(x.FptrSliceFloat64, d)
  5052  	}
  5053  	yyj281++
  5054  	if yyhl281 {
  5055  		yyb281 = yyj281 > l
  5056  	} else {
  5057  		yyb281 = z.DecCheckBreak()
  5058  	}
  5059  	if yyb281 {
  5060  		z.DecReadArrayEnd()
  5061  		return
  5062  	}
  5063  	z.DecReadArrayElem()
  5064  	x.FSliceUint8 = z.DecodeBytesInto(([]byte)(x.FSliceUint8))
  5065  	yyj281++
  5066  	if yyhl281 {
  5067  		yyb281 = yyj281 > l
  5068  	} else {
  5069  		yyb281 = z.DecCheckBreak()
  5070  	}
  5071  	if yyb281 {
  5072  		z.DecReadArrayEnd()
  5073  		return
  5074  	}
  5075  	z.DecReadArrayElem()
  5076  	if r.TryNil() {
  5077  		if x.FptrSliceUint8 != nil { // remove the if-true
  5078  			x.FptrSliceUint8 = nil
  5079  		}
  5080  	} else {
  5081  		if x.FptrSliceUint8 == nil {
  5082  			x.FptrSliceUint8 = new([]uint8)
  5083  		}
  5084  		*x.FptrSliceUint8 = z.DecodeBytesInto(*(*[]byte)(x.FptrSliceUint8))
  5085  	}
  5086  	yyj281++
  5087  	if yyhl281 {
  5088  		yyb281 = yyj281 > l
  5089  	} else {
  5090  		yyb281 = z.DecCheckBreak()
  5091  	}
  5092  	if yyb281 {
  5093  		z.DecReadArrayEnd()
  5094  		return
  5095  	}
  5096  	z.DecReadArrayElem()
  5097  	z.F.DecSliceUint64X(&x.FSliceUint64, d)
  5098  	yyj281++
  5099  	if yyhl281 {
  5100  		yyb281 = yyj281 > l
  5101  	} else {
  5102  		yyb281 = z.DecCheckBreak()
  5103  	}
  5104  	if yyb281 {
  5105  		z.DecReadArrayEnd()
  5106  		return
  5107  	}
  5108  	z.DecReadArrayElem()
  5109  	if r.TryNil() {
  5110  		if x.FptrSliceUint64 != nil { // remove the if-true
  5111  			x.FptrSliceUint64 = nil
  5112  		}
  5113  	} else {
  5114  		if x.FptrSliceUint64 == nil {
  5115  			x.FptrSliceUint64 = new([]uint64)
  5116  		}
  5117  		z.F.DecSliceUint64X(x.FptrSliceUint64, d)
  5118  	}
  5119  	yyj281++
  5120  	if yyhl281 {
  5121  		yyb281 = yyj281 > l
  5122  	} else {
  5123  		yyb281 = z.DecCheckBreak()
  5124  	}
  5125  	if yyb281 {
  5126  		z.DecReadArrayEnd()
  5127  		return
  5128  	}
  5129  	z.DecReadArrayElem()
  5130  	z.F.DecSliceIntX(&x.FSliceInt, d)
  5131  	yyj281++
  5132  	if yyhl281 {
  5133  		yyb281 = yyj281 > l
  5134  	} else {
  5135  		yyb281 = z.DecCheckBreak()
  5136  	}
  5137  	if yyb281 {
  5138  		z.DecReadArrayEnd()
  5139  		return
  5140  	}
  5141  	z.DecReadArrayElem()
  5142  	if r.TryNil() {
  5143  		if x.FptrSliceInt != nil { // remove the if-true
  5144  			x.FptrSliceInt = nil
  5145  		}
  5146  	} else {
  5147  		if x.FptrSliceInt == nil {
  5148  			x.FptrSliceInt = new([]int)
  5149  		}
  5150  		z.F.DecSliceIntX(x.FptrSliceInt, d)
  5151  	}
  5152  	yyj281++
  5153  	if yyhl281 {
  5154  		yyb281 = yyj281 > l
  5155  	} else {
  5156  		yyb281 = z.DecCheckBreak()
  5157  	}
  5158  	if yyb281 {
  5159  		z.DecReadArrayEnd()
  5160  		return
  5161  	}
  5162  	z.DecReadArrayElem()
  5163  	z.F.DecSliceInt32X(&x.FSliceInt32, d)
  5164  	yyj281++
  5165  	if yyhl281 {
  5166  		yyb281 = yyj281 > l
  5167  	} else {
  5168  		yyb281 = z.DecCheckBreak()
  5169  	}
  5170  	if yyb281 {
  5171  		z.DecReadArrayEnd()
  5172  		return
  5173  	}
  5174  	z.DecReadArrayElem()
  5175  	if r.TryNil() {
  5176  		if x.FptrSliceInt32 != nil { // remove the if-true
  5177  			x.FptrSliceInt32 = nil
  5178  		}
  5179  	} else {
  5180  		if x.FptrSliceInt32 == nil {
  5181  			x.FptrSliceInt32 = new([]int32)
  5182  		}
  5183  		z.F.DecSliceInt32X(x.FptrSliceInt32, d)
  5184  	}
  5185  	yyj281++
  5186  	if yyhl281 {
  5187  		yyb281 = yyj281 > l
  5188  	} else {
  5189  		yyb281 = z.DecCheckBreak()
  5190  	}
  5191  	if yyb281 {
  5192  		z.DecReadArrayEnd()
  5193  		return
  5194  	}
  5195  	z.DecReadArrayElem()
  5196  	z.F.DecSliceInt64X(&x.FSliceInt64, d)
  5197  	yyj281++
  5198  	if yyhl281 {
  5199  		yyb281 = yyj281 > l
  5200  	} else {
  5201  		yyb281 = z.DecCheckBreak()
  5202  	}
  5203  	if yyb281 {
  5204  		z.DecReadArrayEnd()
  5205  		return
  5206  	}
  5207  	z.DecReadArrayElem()
  5208  	if r.TryNil() {
  5209  		if x.FptrSliceInt64 != nil { // remove the if-true
  5210  			x.FptrSliceInt64 = nil
  5211  		}
  5212  	} else {
  5213  		if x.FptrSliceInt64 == nil {
  5214  			x.FptrSliceInt64 = new([]int64)
  5215  		}
  5216  		z.F.DecSliceInt64X(x.FptrSliceInt64, d)
  5217  	}
  5218  	yyj281++
  5219  	if yyhl281 {
  5220  		yyb281 = yyj281 > l
  5221  	} else {
  5222  		yyb281 = z.DecCheckBreak()
  5223  	}
  5224  	if yyb281 {
  5225  		z.DecReadArrayEnd()
  5226  		return
  5227  	}
  5228  	z.DecReadArrayElem()
  5229  	z.F.DecSliceBoolX(&x.FSliceBool, d)
  5230  	yyj281++
  5231  	if yyhl281 {
  5232  		yyb281 = yyj281 > l
  5233  	} else {
  5234  		yyb281 = z.DecCheckBreak()
  5235  	}
  5236  	if yyb281 {
  5237  		z.DecReadArrayEnd()
  5238  		return
  5239  	}
  5240  	z.DecReadArrayElem()
  5241  	if r.TryNil() {
  5242  		if x.FptrSliceBool != nil { // remove the if-true
  5243  			x.FptrSliceBool = nil
  5244  		}
  5245  	} else {
  5246  		if x.FptrSliceBool == nil {
  5247  			x.FptrSliceBool = new([]bool)
  5248  		}
  5249  		z.F.DecSliceBoolX(x.FptrSliceBool, d)
  5250  	}
  5251  	yyj281++
  5252  	if yyhl281 {
  5253  		yyb281 = yyj281 > l
  5254  	} else {
  5255  		yyb281 = z.DecCheckBreak()
  5256  	}
  5257  	if yyb281 {
  5258  		z.DecReadArrayEnd()
  5259  		return
  5260  	}
  5261  	z.DecReadArrayElem()
  5262  	z.F.DecMapStringIntfX(&x.FMapStringIntf, d)
  5263  	yyj281++
  5264  	if yyhl281 {
  5265  		yyb281 = yyj281 > l
  5266  	} else {
  5267  		yyb281 = z.DecCheckBreak()
  5268  	}
  5269  	if yyb281 {
  5270  		z.DecReadArrayEnd()
  5271  		return
  5272  	}
  5273  	z.DecReadArrayElem()
  5274  	if r.TryNil() {
  5275  		if x.FptrMapStringIntf != nil { // remove the if-true
  5276  			x.FptrMapStringIntf = nil
  5277  		}
  5278  	} else {
  5279  		if x.FptrMapStringIntf == nil {
  5280  			x.FptrMapStringIntf = new(map[string]interface{})
  5281  		}
  5282  		z.F.DecMapStringIntfX(x.FptrMapStringIntf, d)
  5283  	}
  5284  	yyj281++
  5285  	if yyhl281 {
  5286  		yyb281 = yyj281 > l
  5287  	} else {
  5288  		yyb281 = z.DecCheckBreak()
  5289  	}
  5290  	if yyb281 {
  5291  		z.DecReadArrayEnd()
  5292  		return
  5293  	}
  5294  	z.DecReadArrayElem()
  5295  	z.F.DecMapStringStringX(&x.FMapStringString, d)
  5296  	yyj281++
  5297  	if yyhl281 {
  5298  		yyb281 = yyj281 > l
  5299  	} else {
  5300  		yyb281 = z.DecCheckBreak()
  5301  	}
  5302  	if yyb281 {
  5303  		z.DecReadArrayEnd()
  5304  		return
  5305  	}
  5306  	z.DecReadArrayElem()
  5307  	if r.TryNil() {
  5308  		if x.FptrMapStringString != nil { // remove the if-true
  5309  			x.FptrMapStringString = nil
  5310  		}
  5311  	} else {
  5312  		if x.FptrMapStringString == nil {
  5313  			x.FptrMapStringString = new(map[string]string)
  5314  		}
  5315  		z.F.DecMapStringStringX(x.FptrMapStringString, d)
  5316  	}
  5317  	yyj281++
  5318  	if yyhl281 {
  5319  		yyb281 = yyj281 > l
  5320  	} else {
  5321  		yyb281 = z.DecCheckBreak()
  5322  	}
  5323  	if yyb281 {
  5324  		z.DecReadArrayEnd()
  5325  		return
  5326  	}
  5327  	z.DecReadArrayElem()
  5328  	z.F.DecMapStringBytesX(&x.FMapStringBytes, d)
  5329  	yyj281++
  5330  	if yyhl281 {
  5331  		yyb281 = yyj281 > l
  5332  	} else {
  5333  		yyb281 = z.DecCheckBreak()
  5334  	}
  5335  	if yyb281 {
  5336  		z.DecReadArrayEnd()
  5337  		return
  5338  	}
  5339  	z.DecReadArrayElem()
  5340  	if r.TryNil() {
  5341  		if x.FptrMapStringBytes != nil { // remove the if-true
  5342  			x.FptrMapStringBytes = nil
  5343  		}
  5344  	} else {
  5345  		if x.FptrMapStringBytes == nil {
  5346  			x.FptrMapStringBytes = new(map[string][]uint8)
  5347  		}
  5348  		z.F.DecMapStringBytesX(x.FptrMapStringBytes, d)
  5349  	}
  5350  	yyj281++
  5351  	if yyhl281 {
  5352  		yyb281 = yyj281 > l
  5353  	} else {
  5354  		yyb281 = z.DecCheckBreak()
  5355  	}
  5356  	if yyb281 {
  5357  		z.DecReadArrayEnd()
  5358  		return
  5359  	}
  5360  	z.DecReadArrayElem()
  5361  	z.F.DecMapStringUint8X(&x.FMapStringUint8, d)
  5362  	yyj281++
  5363  	if yyhl281 {
  5364  		yyb281 = yyj281 > l
  5365  	} else {
  5366  		yyb281 = z.DecCheckBreak()
  5367  	}
  5368  	if yyb281 {
  5369  		z.DecReadArrayEnd()
  5370  		return
  5371  	}
  5372  	z.DecReadArrayElem()
  5373  	if r.TryNil() {
  5374  		if x.FptrMapStringUint8 != nil { // remove the if-true
  5375  			x.FptrMapStringUint8 = nil
  5376  		}
  5377  	} else {
  5378  		if x.FptrMapStringUint8 == nil {
  5379  			x.FptrMapStringUint8 = new(map[string]uint8)
  5380  		}
  5381  		z.F.DecMapStringUint8X(x.FptrMapStringUint8, d)
  5382  	}
  5383  	yyj281++
  5384  	if yyhl281 {
  5385  		yyb281 = yyj281 > l
  5386  	} else {
  5387  		yyb281 = z.DecCheckBreak()
  5388  	}
  5389  	if yyb281 {
  5390  		z.DecReadArrayEnd()
  5391  		return
  5392  	}
  5393  	z.DecReadArrayElem()
  5394  	z.F.DecMapStringUint64X(&x.FMapStringUint64, d)
  5395  	yyj281++
  5396  	if yyhl281 {
  5397  		yyb281 = yyj281 > l
  5398  	} else {
  5399  		yyb281 = z.DecCheckBreak()
  5400  	}
  5401  	if yyb281 {
  5402  		z.DecReadArrayEnd()
  5403  		return
  5404  	}
  5405  	z.DecReadArrayElem()
  5406  	if r.TryNil() {
  5407  		if x.FptrMapStringUint64 != nil { // remove the if-true
  5408  			x.FptrMapStringUint64 = nil
  5409  		}
  5410  	} else {
  5411  		if x.FptrMapStringUint64 == nil {
  5412  			x.FptrMapStringUint64 = new(map[string]uint64)
  5413  		}
  5414  		z.F.DecMapStringUint64X(x.FptrMapStringUint64, d)
  5415  	}
  5416  	yyj281++
  5417  	if yyhl281 {
  5418  		yyb281 = yyj281 > l
  5419  	} else {
  5420  		yyb281 = z.DecCheckBreak()
  5421  	}
  5422  	if yyb281 {
  5423  		z.DecReadArrayEnd()
  5424  		return
  5425  	}
  5426  	z.DecReadArrayElem()
  5427  	z.F.DecMapStringIntX(&x.FMapStringInt, d)
  5428  	yyj281++
  5429  	if yyhl281 {
  5430  		yyb281 = yyj281 > l
  5431  	} else {
  5432  		yyb281 = z.DecCheckBreak()
  5433  	}
  5434  	if yyb281 {
  5435  		z.DecReadArrayEnd()
  5436  		return
  5437  	}
  5438  	z.DecReadArrayElem()
  5439  	if r.TryNil() {
  5440  		if x.FptrMapStringInt != nil { // remove the if-true
  5441  			x.FptrMapStringInt = nil
  5442  		}
  5443  	} else {
  5444  		if x.FptrMapStringInt == nil {
  5445  			x.FptrMapStringInt = new(map[string]int)
  5446  		}
  5447  		z.F.DecMapStringIntX(x.FptrMapStringInt, d)
  5448  	}
  5449  	yyj281++
  5450  	if yyhl281 {
  5451  		yyb281 = yyj281 > l
  5452  	} else {
  5453  		yyb281 = z.DecCheckBreak()
  5454  	}
  5455  	if yyb281 {
  5456  		z.DecReadArrayEnd()
  5457  		return
  5458  	}
  5459  	z.DecReadArrayElem()
  5460  	z.F.DecMapStringInt32X(&x.FMapStringInt32, d)
  5461  	yyj281++
  5462  	if yyhl281 {
  5463  		yyb281 = yyj281 > l
  5464  	} else {
  5465  		yyb281 = z.DecCheckBreak()
  5466  	}
  5467  	if yyb281 {
  5468  		z.DecReadArrayEnd()
  5469  		return
  5470  	}
  5471  	z.DecReadArrayElem()
  5472  	if r.TryNil() {
  5473  		if x.FptrMapStringInt32 != nil { // remove the if-true
  5474  			x.FptrMapStringInt32 = nil
  5475  		}
  5476  	} else {
  5477  		if x.FptrMapStringInt32 == nil {
  5478  			x.FptrMapStringInt32 = new(map[string]int32)
  5479  		}
  5480  		z.F.DecMapStringInt32X(x.FptrMapStringInt32, d)
  5481  	}
  5482  	yyj281++
  5483  	if yyhl281 {
  5484  		yyb281 = yyj281 > l
  5485  	} else {
  5486  		yyb281 = z.DecCheckBreak()
  5487  	}
  5488  	if yyb281 {
  5489  		z.DecReadArrayEnd()
  5490  		return
  5491  	}
  5492  	z.DecReadArrayElem()
  5493  	z.F.DecMapStringFloat64X(&x.FMapStringFloat64, d)
  5494  	yyj281++
  5495  	if yyhl281 {
  5496  		yyb281 = yyj281 > l
  5497  	} else {
  5498  		yyb281 = z.DecCheckBreak()
  5499  	}
  5500  	if yyb281 {
  5501  		z.DecReadArrayEnd()
  5502  		return
  5503  	}
  5504  	z.DecReadArrayElem()
  5505  	if r.TryNil() {
  5506  		if x.FptrMapStringFloat64 != nil { // remove the if-true
  5507  			x.FptrMapStringFloat64 = nil
  5508  		}
  5509  	} else {
  5510  		if x.FptrMapStringFloat64 == nil {
  5511  			x.FptrMapStringFloat64 = new(map[string]float64)
  5512  		}
  5513  		z.F.DecMapStringFloat64X(x.FptrMapStringFloat64, d)
  5514  	}
  5515  	yyj281++
  5516  	if yyhl281 {
  5517  		yyb281 = yyj281 > l
  5518  	} else {
  5519  		yyb281 = z.DecCheckBreak()
  5520  	}
  5521  	if yyb281 {
  5522  		z.DecReadArrayEnd()
  5523  		return
  5524  	}
  5525  	z.DecReadArrayElem()
  5526  	z.F.DecMapStringBoolX(&x.FMapStringBool, d)
  5527  	yyj281++
  5528  	if yyhl281 {
  5529  		yyb281 = yyj281 > l
  5530  	} else {
  5531  		yyb281 = z.DecCheckBreak()
  5532  	}
  5533  	if yyb281 {
  5534  		z.DecReadArrayEnd()
  5535  		return
  5536  	}
  5537  	z.DecReadArrayElem()
  5538  	if r.TryNil() {
  5539  		if x.FptrMapStringBool != nil { // remove the if-true
  5540  			x.FptrMapStringBool = nil
  5541  		}
  5542  	} else {
  5543  		if x.FptrMapStringBool == nil {
  5544  			x.FptrMapStringBool = new(map[string]bool)
  5545  		}
  5546  		z.F.DecMapStringBoolX(x.FptrMapStringBool, d)
  5547  	}
  5548  	yyj281++
  5549  	if yyhl281 {
  5550  		yyb281 = yyj281 > l
  5551  	} else {
  5552  		yyb281 = z.DecCheckBreak()
  5553  	}
  5554  	if yyb281 {
  5555  		z.DecReadArrayEnd()
  5556  		return
  5557  	}
  5558  	z.DecReadArrayElem()
  5559  	z.F.DecMapUint8IntfX(&x.FMapUint8Intf, d)
  5560  	yyj281++
  5561  	if yyhl281 {
  5562  		yyb281 = yyj281 > l
  5563  	} else {
  5564  		yyb281 = z.DecCheckBreak()
  5565  	}
  5566  	if yyb281 {
  5567  		z.DecReadArrayEnd()
  5568  		return
  5569  	}
  5570  	z.DecReadArrayElem()
  5571  	if r.TryNil() {
  5572  		if x.FptrMapUint8Intf != nil { // remove the if-true
  5573  			x.FptrMapUint8Intf = nil
  5574  		}
  5575  	} else {
  5576  		if x.FptrMapUint8Intf == nil {
  5577  			x.FptrMapUint8Intf = new(map[uint8]interface{})
  5578  		}
  5579  		z.F.DecMapUint8IntfX(x.FptrMapUint8Intf, d)
  5580  	}
  5581  	yyj281++
  5582  	if yyhl281 {
  5583  		yyb281 = yyj281 > l
  5584  	} else {
  5585  		yyb281 = z.DecCheckBreak()
  5586  	}
  5587  	if yyb281 {
  5588  		z.DecReadArrayEnd()
  5589  		return
  5590  	}
  5591  	z.DecReadArrayElem()
  5592  	z.F.DecMapUint8StringX(&x.FMapUint8String, d)
  5593  	yyj281++
  5594  	if yyhl281 {
  5595  		yyb281 = yyj281 > l
  5596  	} else {
  5597  		yyb281 = z.DecCheckBreak()
  5598  	}
  5599  	if yyb281 {
  5600  		z.DecReadArrayEnd()
  5601  		return
  5602  	}
  5603  	z.DecReadArrayElem()
  5604  	if r.TryNil() {
  5605  		if x.FptrMapUint8String != nil { // remove the if-true
  5606  			x.FptrMapUint8String = nil
  5607  		}
  5608  	} else {
  5609  		if x.FptrMapUint8String == nil {
  5610  			x.FptrMapUint8String = new(map[uint8]string)
  5611  		}
  5612  		z.F.DecMapUint8StringX(x.FptrMapUint8String, d)
  5613  	}
  5614  	yyj281++
  5615  	if yyhl281 {
  5616  		yyb281 = yyj281 > l
  5617  	} else {
  5618  		yyb281 = z.DecCheckBreak()
  5619  	}
  5620  	if yyb281 {
  5621  		z.DecReadArrayEnd()
  5622  		return
  5623  	}
  5624  	z.DecReadArrayElem()
  5625  	z.F.DecMapUint8BytesX(&x.FMapUint8Bytes, d)
  5626  	yyj281++
  5627  	if yyhl281 {
  5628  		yyb281 = yyj281 > l
  5629  	} else {
  5630  		yyb281 = z.DecCheckBreak()
  5631  	}
  5632  	if yyb281 {
  5633  		z.DecReadArrayEnd()
  5634  		return
  5635  	}
  5636  	z.DecReadArrayElem()
  5637  	if r.TryNil() {
  5638  		if x.FptrMapUint8Bytes != nil { // remove the if-true
  5639  			x.FptrMapUint8Bytes = nil
  5640  		}
  5641  	} else {
  5642  		if x.FptrMapUint8Bytes == nil {
  5643  			x.FptrMapUint8Bytes = new(map[uint8][]uint8)
  5644  		}
  5645  		z.F.DecMapUint8BytesX(x.FptrMapUint8Bytes, d)
  5646  	}
  5647  	yyj281++
  5648  	if yyhl281 {
  5649  		yyb281 = yyj281 > l
  5650  	} else {
  5651  		yyb281 = z.DecCheckBreak()
  5652  	}
  5653  	if yyb281 {
  5654  		z.DecReadArrayEnd()
  5655  		return
  5656  	}
  5657  	z.DecReadArrayElem()
  5658  	z.F.DecMapUint8Uint8X(&x.FMapUint8Uint8, d)
  5659  	yyj281++
  5660  	if yyhl281 {
  5661  		yyb281 = yyj281 > l
  5662  	} else {
  5663  		yyb281 = z.DecCheckBreak()
  5664  	}
  5665  	if yyb281 {
  5666  		z.DecReadArrayEnd()
  5667  		return
  5668  	}
  5669  	z.DecReadArrayElem()
  5670  	if r.TryNil() {
  5671  		if x.FptrMapUint8Uint8 != nil { // remove the if-true
  5672  			x.FptrMapUint8Uint8 = nil
  5673  		}
  5674  	} else {
  5675  		if x.FptrMapUint8Uint8 == nil {
  5676  			x.FptrMapUint8Uint8 = new(map[uint8]uint8)
  5677  		}
  5678  		z.F.DecMapUint8Uint8X(x.FptrMapUint8Uint8, d)
  5679  	}
  5680  	yyj281++
  5681  	if yyhl281 {
  5682  		yyb281 = yyj281 > l
  5683  	} else {
  5684  		yyb281 = z.DecCheckBreak()
  5685  	}
  5686  	if yyb281 {
  5687  		z.DecReadArrayEnd()
  5688  		return
  5689  	}
  5690  	z.DecReadArrayElem()
  5691  	z.F.DecMapUint8Uint64X(&x.FMapUint8Uint64, d)
  5692  	yyj281++
  5693  	if yyhl281 {
  5694  		yyb281 = yyj281 > l
  5695  	} else {
  5696  		yyb281 = z.DecCheckBreak()
  5697  	}
  5698  	if yyb281 {
  5699  		z.DecReadArrayEnd()
  5700  		return
  5701  	}
  5702  	z.DecReadArrayElem()
  5703  	if r.TryNil() {
  5704  		if x.FptrMapUint8Uint64 != nil { // remove the if-true
  5705  			x.FptrMapUint8Uint64 = nil
  5706  		}
  5707  	} else {
  5708  		if x.FptrMapUint8Uint64 == nil {
  5709  			x.FptrMapUint8Uint64 = new(map[uint8]uint64)
  5710  		}
  5711  		z.F.DecMapUint8Uint64X(x.FptrMapUint8Uint64, d)
  5712  	}
  5713  	yyj281++
  5714  	if yyhl281 {
  5715  		yyb281 = yyj281 > l
  5716  	} else {
  5717  		yyb281 = z.DecCheckBreak()
  5718  	}
  5719  	if yyb281 {
  5720  		z.DecReadArrayEnd()
  5721  		return
  5722  	}
  5723  	z.DecReadArrayElem()
  5724  	z.F.DecMapUint8IntX(&x.FMapUint8Int, d)
  5725  	yyj281++
  5726  	if yyhl281 {
  5727  		yyb281 = yyj281 > l
  5728  	} else {
  5729  		yyb281 = z.DecCheckBreak()
  5730  	}
  5731  	if yyb281 {
  5732  		z.DecReadArrayEnd()
  5733  		return
  5734  	}
  5735  	z.DecReadArrayElem()
  5736  	if r.TryNil() {
  5737  		if x.FptrMapUint8Int != nil { // remove the if-true
  5738  			x.FptrMapUint8Int = nil
  5739  		}
  5740  	} else {
  5741  		if x.FptrMapUint8Int == nil {
  5742  			x.FptrMapUint8Int = new(map[uint8]int)
  5743  		}
  5744  		z.F.DecMapUint8IntX(x.FptrMapUint8Int, d)
  5745  	}
  5746  	yyj281++
  5747  	if yyhl281 {
  5748  		yyb281 = yyj281 > l
  5749  	} else {
  5750  		yyb281 = z.DecCheckBreak()
  5751  	}
  5752  	if yyb281 {
  5753  		z.DecReadArrayEnd()
  5754  		return
  5755  	}
  5756  	z.DecReadArrayElem()
  5757  	z.F.DecMapUint8Int32X(&x.FMapUint8Int32, d)
  5758  	yyj281++
  5759  	if yyhl281 {
  5760  		yyb281 = yyj281 > l
  5761  	} else {
  5762  		yyb281 = z.DecCheckBreak()
  5763  	}
  5764  	if yyb281 {
  5765  		z.DecReadArrayEnd()
  5766  		return
  5767  	}
  5768  	z.DecReadArrayElem()
  5769  	if r.TryNil() {
  5770  		if x.FptrMapUint8Int32 != nil { // remove the if-true
  5771  			x.FptrMapUint8Int32 = nil
  5772  		}
  5773  	} else {
  5774  		if x.FptrMapUint8Int32 == nil {
  5775  			x.FptrMapUint8Int32 = new(map[uint8]int32)
  5776  		}
  5777  		z.F.DecMapUint8Int32X(x.FptrMapUint8Int32, d)
  5778  	}
  5779  	yyj281++
  5780  	if yyhl281 {
  5781  		yyb281 = yyj281 > l
  5782  	} else {
  5783  		yyb281 = z.DecCheckBreak()
  5784  	}
  5785  	if yyb281 {
  5786  		z.DecReadArrayEnd()
  5787  		return
  5788  	}
  5789  	z.DecReadArrayElem()
  5790  	z.F.DecMapUint8Float64X(&x.FMapUint8Float64, d)
  5791  	yyj281++
  5792  	if yyhl281 {
  5793  		yyb281 = yyj281 > l
  5794  	} else {
  5795  		yyb281 = z.DecCheckBreak()
  5796  	}
  5797  	if yyb281 {
  5798  		z.DecReadArrayEnd()
  5799  		return
  5800  	}
  5801  	z.DecReadArrayElem()
  5802  	if r.TryNil() {
  5803  		if x.FptrMapUint8Float64 != nil { // remove the if-true
  5804  			x.FptrMapUint8Float64 = nil
  5805  		}
  5806  	} else {
  5807  		if x.FptrMapUint8Float64 == nil {
  5808  			x.FptrMapUint8Float64 = new(map[uint8]float64)
  5809  		}
  5810  		z.F.DecMapUint8Float64X(x.FptrMapUint8Float64, d)
  5811  	}
  5812  	yyj281++
  5813  	if yyhl281 {
  5814  		yyb281 = yyj281 > l
  5815  	} else {
  5816  		yyb281 = z.DecCheckBreak()
  5817  	}
  5818  	if yyb281 {
  5819  		z.DecReadArrayEnd()
  5820  		return
  5821  	}
  5822  	z.DecReadArrayElem()
  5823  	z.F.DecMapUint8BoolX(&x.FMapUint8Bool, d)
  5824  	yyj281++
  5825  	if yyhl281 {
  5826  		yyb281 = yyj281 > l
  5827  	} else {
  5828  		yyb281 = z.DecCheckBreak()
  5829  	}
  5830  	if yyb281 {
  5831  		z.DecReadArrayEnd()
  5832  		return
  5833  	}
  5834  	z.DecReadArrayElem()
  5835  	if r.TryNil() {
  5836  		if x.FptrMapUint8Bool != nil { // remove the if-true
  5837  			x.FptrMapUint8Bool = nil
  5838  		}
  5839  	} else {
  5840  		if x.FptrMapUint8Bool == nil {
  5841  			x.FptrMapUint8Bool = new(map[uint8]bool)
  5842  		}
  5843  		z.F.DecMapUint8BoolX(x.FptrMapUint8Bool, d)
  5844  	}
  5845  	yyj281++
  5846  	if yyhl281 {
  5847  		yyb281 = yyj281 > l
  5848  	} else {
  5849  		yyb281 = z.DecCheckBreak()
  5850  	}
  5851  	if yyb281 {
  5852  		z.DecReadArrayEnd()
  5853  		return
  5854  	}
  5855  	z.DecReadArrayElem()
  5856  	z.F.DecMapUint64IntfX(&x.FMapUint64Intf, d)
  5857  	yyj281++
  5858  	if yyhl281 {
  5859  		yyb281 = yyj281 > l
  5860  	} else {
  5861  		yyb281 = z.DecCheckBreak()
  5862  	}
  5863  	if yyb281 {
  5864  		z.DecReadArrayEnd()
  5865  		return
  5866  	}
  5867  	z.DecReadArrayElem()
  5868  	if r.TryNil() {
  5869  		if x.FptrMapUint64Intf != nil { // remove the if-true
  5870  			x.FptrMapUint64Intf = nil
  5871  		}
  5872  	} else {
  5873  		if x.FptrMapUint64Intf == nil {
  5874  			x.FptrMapUint64Intf = new(map[uint64]interface{})
  5875  		}
  5876  		z.F.DecMapUint64IntfX(x.FptrMapUint64Intf, d)
  5877  	}
  5878  	yyj281++
  5879  	if yyhl281 {
  5880  		yyb281 = yyj281 > l
  5881  	} else {
  5882  		yyb281 = z.DecCheckBreak()
  5883  	}
  5884  	if yyb281 {
  5885  		z.DecReadArrayEnd()
  5886  		return
  5887  	}
  5888  	z.DecReadArrayElem()
  5889  	z.F.DecMapUint64StringX(&x.FMapUint64String, d)
  5890  	yyj281++
  5891  	if yyhl281 {
  5892  		yyb281 = yyj281 > l
  5893  	} else {
  5894  		yyb281 = z.DecCheckBreak()
  5895  	}
  5896  	if yyb281 {
  5897  		z.DecReadArrayEnd()
  5898  		return
  5899  	}
  5900  	z.DecReadArrayElem()
  5901  	if r.TryNil() {
  5902  		if x.FptrMapUint64String != nil { // remove the if-true
  5903  			x.FptrMapUint64String = nil
  5904  		}
  5905  	} else {
  5906  		if x.FptrMapUint64String == nil {
  5907  			x.FptrMapUint64String = new(map[uint64]string)
  5908  		}
  5909  		z.F.DecMapUint64StringX(x.FptrMapUint64String, d)
  5910  	}
  5911  	yyj281++
  5912  	if yyhl281 {
  5913  		yyb281 = yyj281 > l
  5914  	} else {
  5915  		yyb281 = z.DecCheckBreak()
  5916  	}
  5917  	if yyb281 {
  5918  		z.DecReadArrayEnd()
  5919  		return
  5920  	}
  5921  	z.DecReadArrayElem()
  5922  	z.F.DecMapUint64BytesX(&x.FMapUint64Bytes, d)
  5923  	yyj281++
  5924  	if yyhl281 {
  5925  		yyb281 = yyj281 > l
  5926  	} else {
  5927  		yyb281 = z.DecCheckBreak()
  5928  	}
  5929  	if yyb281 {
  5930  		z.DecReadArrayEnd()
  5931  		return
  5932  	}
  5933  	z.DecReadArrayElem()
  5934  	if r.TryNil() {
  5935  		if x.FptrMapUint64Bytes != nil { // remove the if-true
  5936  			x.FptrMapUint64Bytes = nil
  5937  		}
  5938  	} else {
  5939  		if x.FptrMapUint64Bytes == nil {
  5940  			x.FptrMapUint64Bytes = new(map[uint64][]uint8)
  5941  		}
  5942  		z.F.DecMapUint64BytesX(x.FptrMapUint64Bytes, d)
  5943  	}
  5944  	yyj281++
  5945  	if yyhl281 {
  5946  		yyb281 = yyj281 > l
  5947  	} else {
  5948  		yyb281 = z.DecCheckBreak()
  5949  	}
  5950  	if yyb281 {
  5951  		z.DecReadArrayEnd()
  5952  		return
  5953  	}
  5954  	z.DecReadArrayElem()
  5955  	z.F.DecMapUint64Uint8X(&x.FMapUint64Uint8, d)
  5956  	yyj281++
  5957  	if yyhl281 {
  5958  		yyb281 = yyj281 > l
  5959  	} else {
  5960  		yyb281 = z.DecCheckBreak()
  5961  	}
  5962  	if yyb281 {
  5963  		z.DecReadArrayEnd()
  5964  		return
  5965  	}
  5966  	z.DecReadArrayElem()
  5967  	if r.TryNil() {
  5968  		if x.FptrMapUint64Uint8 != nil { // remove the if-true
  5969  			x.FptrMapUint64Uint8 = nil
  5970  		}
  5971  	} else {
  5972  		if x.FptrMapUint64Uint8 == nil {
  5973  			x.FptrMapUint64Uint8 = new(map[uint64]uint8)
  5974  		}
  5975  		z.F.DecMapUint64Uint8X(x.FptrMapUint64Uint8, d)
  5976  	}
  5977  	yyj281++
  5978  	if yyhl281 {
  5979  		yyb281 = yyj281 > l
  5980  	} else {
  5981  		yyb281 = z.DecCheckBreak()
  5982  	}
  5983  	if yyb281 {
  5984  		z.DecReadArrayEnd()
  5985  		return
  5986  	}
  5987  	z.DecReadArrayElem()
  5988  	z.F.DecMapUint64Uint64X(&x.FMapUint64Uint64, d)
  5989  	yyj281++
  5990  	if yyhl281 {
  5991  		yyb281 = yyj281 > l
  5992  	} else {
  5993  		yyb281 = z.DecCheckBreak()
  5994  	}
  5995  	if yyb281 {
  5996  		z.DecReadArrayEnd()
  5997  		return
  5998  	}
  5999  	z.DecReadArrayElem()
  6000  	if r.TryNil() {
  6001  		if x.FptrMapUint64Uint64 != nil { // remove the if-true
  6002  			x.FptrMapUint64Uint64 = nil
  6003  		}
  6004  	} else {
  6005  		if x.FptrMapUint64Uint64 == nil {
  6006  			x.FptrMapUint64Uint64 = new(map[uint64]uint64)
  6007  		}
  6008  		z.F.DecMapUint64Uint64X(x.FptrMapUint64Uint64, d)
  6009  	}
  6010  	yyj281++
  6011  	if yyhl281 {
  6012  		yyb281 = yyj281 > l
  6013  	} else {
  6014  		yyb281 = z.DecCheckBreak()
  6015  	}
  6016  	if yyb281 {
  6017  		z.DecReadArrayEnd()
  6018  		return
  6019  	}
  6020  	z.DecReadArrayElem()
  6021  	z.F.DecMapUint64IntX(&x.FMapUint64Int, d)
  6022  	yyj281++
  6023  	if yyhl281 {
  6024  		yyb281 = yyj281 > l
  6025  	} else {
  6026  		yyb281 = z.DecCheckBreak()
  6027  	}
  6028  	if yyb281 {
  6029  		z.DecReadArrayEnd()
  6030  		return
  6031  	}
  6032  	z.DecReadArrayElem()
  6033  	if r.TryNil() {
  6034  		if x.FptrMapUint64Int != nil { // remove the if-true
  6035  			x.FptrMapUint64Int = nil
  6036  		}
  6037  	} else {
  6038  		if x.FptrMapUint64Int == nil {
  6039  			x.FptrMapUint64Int = new(map[uint64]int)
  6040  		}
  6041  		z.F.DecMapUint64IntX(x.FptrMapUint64Int, d)
  6042  	}
  6043  	yyj281++
  6044  	if yyhl281 {
  6045  		yyb281 = yyj281 > l
  6046  	} else {
  6047  		yyb281 = z.DecCheckBreak()
  6048  	}
  6049  	if yyb281 {
  6050  		z.DecReadArrayEnd()
  6051  		return
  6052  	}
  6053  	z.DecReadArrayElem()
  6054  	z.F.DecMapUint64Int32X(&x.FMapUint64Int32, d)
  6055  	yyj281++
  6056  	if yyhl281 {
  6057  		yyb281 = yyj281 > l
  6058  	} else {
  6059  		yyb281 = z.DecCheckBreak()
  6060  	}
  6061  	if yyb281 {
  6062  		z.DecReadArrayEnd()
  6063  		return
  6064  	}
  6065  	z.DecReadArrayElem()
  6066  	if r.TryNil() {
  6067  		if x.FptrMapUint64Int32 != nil { // remove the if-true
  6068  			x.FptrMapUint64Int32 = nil
  6069  		}
  6070  	} else {
  6071  		if x.FptrMapUint64Int32 == nil {
  6072  			x.FptrMapUint64Int32 = new(map[uint64]int32)
  6073  		}
  6074  		z.F.DecMapUint64Int32X(x.FptrMapUint64Int32, d)
  6075  	}
  6076  	yyj281++
  6077  	if yyhl281 {
  6078  		yyb281 = yyj281 > l
  6079  	} else {
  6080  		yyb281 = z.DecCheckBreak()
  6081  	}
  6082  	if yyb281 {
  6083  		z.DecReadArrayEnd()
  6084  		return
  6085  	}
  6086  	z.DecReadArrayElem()
  6087  	z.F.DecMapUint64Float64X(&x.FMapUint64Float64, d)
  6088  	yyj281++
  6089  	if yyhl281 {
  6090  		yyb281 = yyj281 > l
  6091  	} else {
  6092  		yyb281 = z.DecCheckBreak()
  6093  	}
  6094  	if yyb281 {
  6095  		z.DecReadArrayEnd()
  6096  		return
  6097  	}
  6098  	z.DecReadArrayElem()
  6099  	if r.TryNil() {
  6100  		if x.FptrMapUint64Float64 != nil { // remove the if-true
  6101  			x.FptrMapUint64Float64 = nil
  6102  		}
  6103  	} else {
  6104  		if x.FptrMapUint64Float64 == nil {
  6105  			x.FptrMapUint64Float64 = new(map[uint64]float64)
  6106  		}
  6107  		z.F.DecMapUint64Float64X(x.FptrMapUint64Float64, d)
  6108  	}
  6109  	yyj281++
  6110  	if yyhl281 {
  6111  		yyb281 = yyj281 > l
  6112  	} else {
  6113  		yyb281 = z.DecCheckBreak()
  6114  	}
  6115  	if yyb281 {
  6116  		z.DecReadArrayEnd()
  6117  		return
  6118  	}
  6119  	z.DecReadArrayElem()
  6120  	z.F.DecMapUint64BoolX(&x.FMapUint64Bool, d)
  6121  	yyj281++
  6122  	if yyhl281 {
  6123  		yyb281 = yyj281 > l
  6124  	} else {
  6125  		yyb281 = z.DecCheckBreak()
  6126  	}
  6127  	if yyb281 {
  6128  		z.DecReadArrayEnd()
  6129  		return
  6130  	}
  6131  	z.DecReadArrayElem()
  6132  	if r.TryNil() {
  6133  		if x.FptrMapUint64Bool != nil { // remove the if-true
  6134  			x.FptrMapUint64Bool = nil
  6135  		}
  6136  	} else {
  6137  		if x.FptrMapUint64Bool == nil {
  6138  			x.FptrMapUint64Bool = new(map[uint64]bool)
  6139  		}
  6140  		z.F.DecMapUint64BoolX(x.FptrMapUint64Bool, d)
  6141  	}
  6142  	yyj281++
  6143  	if yyhl281 {
  6144  		yyb281 = yyj281 > l
  6145  	} else {
  6146  		yyb281 = z.DecCheckBreak()
  6147  	}
  6148  	if yyb281 {
  6149  		z.DecReadArrayEnd()
  6150  		return
  6151  	}
  6152  	z.DecReadArrayElem()
  6153  	z.F.DecMapIntIntfX(&x.FMapIntIntf, d)
  6154  	yyj281++
  6155  	if yyhl281 {
  6156  		yyb281 = yyj281 > l
  6157  	} else {
  6158  		yyb281 = z.DecCheckBreak()
  6159  	}
  6160  	if yyb281 {
  6161  		z.DecReadArrayEnd()
  6162  		return
  6163  	}
  6164  	z.DecReadArrayElem()
  6165  	if r.TryNil() {
  6166  		if x.FptrMapIntIntf != nil { // remove the if-true
  6167  			x.FptrMapIntIntf = nil
  6168  		}
  6169  	} else {
  6170  		if x.FptrMapIntIntf == nil {
  6171  			x.FptrMapIntIntf = new(map[int]interface{})
  6172  		}
  6173  		z.F.DecMapIntIntfX(x.FptrMapIntIntf, d)
  6174  	}
  6175  	yyj281++
  6176  	if yyhl281 {
  6177  		yyb281 = yyj281 > l
  6178  	} else {
  6179  		yyb281 = z.DecCheckBreak()
  6180  	}
  6181  	if yyb281 {
  6182  		z.DecReadArrayEnd()
  6183  		return
  6184  	}
  6185  	z.DecReadArrayElem()
  6186  	z.F.DecMapIntStringX(&x.FMapIntString, d)
  6187  	yyj281++
  6188  	if yyhl281 {
  6189  		yyb281 = yyj281 > l
  6190  	} else {
  6191  		yyb281 = z.DecCheckBreak()
  6192  	}
  6193  	if yyb281 {
  6194  		z.DecReadArrayEnd()
  6195  		return
  6196  	}
  6197  	z.DecReadArrayElem()
  6198  	if r.TryNil() {
  6199  		if x.FptrMapIntString != nil { // remove the if-true
  6200  			x.FptrMapIntString = nil
  6201  		}
  6202  	} else {
  6203  		if x.FptrMapIntString == nil {
  6204  			x.FptrMapIntString = new(map[int]string)
  6205  		}
  6206  		z.F.DecMapIntStringX(x.FptrMapIntString, d)
  6207  	}
  6208  	yyj281++
  6209  	if yyhl281 {
  6210  		yyb281 = yyj281 > l
  6211  	} else {
  6212  		yyb281 = z.DecCheckBreak()
  6213  	}
  6214  	if yyb281 {
  6215  		z.DecReadArrayEnd()
  6216  		return
  6217  	}
  6218  	z.DecReadArrayElem()
  6219  	z.F.DecMapIntBytesX(&x.FMapIntBytes, d)
  6220  	yyj281++
  6221  	if yyhl281 {
  6222  		yyb281 = yyj281 > l
  6223  	} else {
  6224  		yyb281 = z.DecCheckBreak()
  6225  	}
  6226  	if yyb281 {
  6227  		z.DecReadArrayEnd()
  6228  		return
  6229  	}
  6230  	z.DecReadArrayElem()
  6231  	if r.TryNil() {
  6232  		if x.FptrMapIntBytes != nil { // remove the if-true
  6233  			x.FptrMapIntBytes = nil
  6234  		}
  6235  	} else {
  6236  		if x.FptrMapIntBytes == nil {
  6237  			x.FptrMapIntBytes = new(map[int][]uint8)
  6238  		}
  6239  		z.F.DecMapIntBytesX(x.FptrMapIntBytes, d)
  6240  	}
  6241  	yyj281++
  6242  	if yyhl281 {
  6243  		yyb281 = yyj281 > l
  6244  	} else {
  6245  		yyb281 = z.DecCheckBreak()
  6246  	}
  6247  	if yyb281 {
  6248  		z.DecReadArrayEnd()
  6249  		return
  6250  	}
  6251  	z.DecReadArrayElem()
  6252  	z.F.DecMapIntUint8X(&x.FMapIntUint8, d)
  6253  	yyj281++
  6254  	if yyhl281 {
  6255  		yyb281 = yyj281 > l
  6256  	} else {
  6257  		yyb281 = z.DecCheckBreak()
  6258  	}
  6259  	if yyb281 {
  6260  		z.DecReadArrayEnd()
  6261  		return
  6262  	}
  6263  	z.DecReadArrayElem()
  6264  	if r.TryNil() {
  6265  		if x.FptrMapIntUint8 != nil { // remove the if-true
  6266  			x.FptrMapIntUint8 = nil
  6267  		}
  6268  	} else {
  6269  		if x.FptrMapIntUint8 == nil {
  6270  			x.FptrMapIntUint8 = new(map[int]uint8)
  6271  		}
  6272  		z.F.DecMapIntUint8X(x.FptrMapIntUint8, d)
  6273  	}
  6274  	yyj281++
  6275  	if yyhl281 {
  6276  		yyb281 = yyj281 > l
  6277  	} else {
  6278  		yyb281 = z.DecCheckBreak()
  6279  	}
  6280  	if yyb281 {
  6281  		z.DecReadArrayEnd()
  6282  		return
  6283  	}
  6284  	z.DecReadArrayElem()
  6285  	z.F.DecMapIntUint64X(&x.FMapIntUint64, d)
  6286  	yyj281++
  6287  	if yyhl281 {
  6288  		yyb281 = yyj281 > l
  6289  	} else {
  6290  		yyb281 = z.DecCheckBreak()
  6291  	}
  6292  	if yyb281 {
  6293  		z.DecReadArrayEnd()
  6294  		return
  6295  	}
  6296  	z.DecReadArrayElem()
  6297  	if r.TryNil() {
  6298  		if x.FptrMapIntUint64 != nil { // remove the if-true
  6299  			x.FptrMapIntUint64 = nil
  6300  		}
  6301  	} else {
  6302  		if x.FptrMapIntUint64 == nil {
  6303  			x.FptrMapIntUint64 = new(map[int]uint64)
  6304  		}
  6305  		z.F.DecMapIntUint64X(x.FptrMapIntUint64, d)
  6306  	}
  6307  	yyj281++
  6308  	if yyhl281 {
  6309  		yyb281 = yyj281 > l
  6310  	} else {
  6311  		yyb281 = z.DecCheckBreak()
  6312  	}
  6313  	if yyb281 {
  6314  		z.DecReadArrayEnd()
  6315  		return
  6316  	}
  6317  	z.DecReadArrayElem()
  6318  	z.F.DecMapIntIntX(&x.FMapIntInt, d)
  6319  	yyj281++
  6320  	if yyhl281 {
  6321  		yyb281 = yyj281 > l
  6322  	} else {
  6323  		yyb281 = z.DecCheckBreak()
  6324  	}
  6325  	if yyb281 {
  6326  		z.DecReadArrayEnd()
  6327  		return
  6328  	}
  6329  	z.DecReadArrayElem()
  6330  	if r.TryNil() {
  6331  		if x.FptrMapIntInt != nil { // remove the if-true
  6332  			x.FptrMapIntInt = nil
  6333  		}
  6334  	} else {
  6335  		if x.FptrMapIntInt == nil {
  6336  			x.FptrMapIntInt = new(map[int]int)
  6337  		}
  6338  		z.F.DecMapIntIntX(x.FptrMapIntInt, d)
  6339  	}
  6340  	yyj281++
  6341  	if yyhl281 {
  6342  		yyb281 = yyj281 > l
  6343  	} else {
  6344  		yyb281 = z.DecCheckBreak()
  6345  	}
  6346  	if yyb281 {
  6347  		z.DecReadArrayEnd()
  6348  		return
  6349  	}
  6350  	z.DecReadArrayElem()
  6351  	z.F.DecMapIntInt32X(&x.FMapIntInt32, d)
  6352  	yyj281++
  6353  	if yyhl281 {
  6354  		yyb281 = yyj281 > l
  6355  	} else {
  6356  		yyb281 = z.DecCheckBreak()
  6357  	}
  6358  	if yyb281 {
  6359  		z.DecReadArrayEnd()
  6360  		return
  6361  	}
  6362  	z.DecReadArrayElem()
  6363  	if r.TryNil() {
  6364  		if x.FptrMapIntInt32 != nil { // remove the if-true
  6365  			x.FptrMapIntInt32 = nil
  6366  		}
  6367  	} else {
  6368  		if x.FptrMapIntInt32 == nil {
  6369  			x.FptrMapIntInt32 = new(map[int]int32)
  6370  		}
  6371  		z.F.DecMapIntInt32X(x.FptrMapIntInt32, d)
  6372  	}
  6373  	yyj281++
  6374  	if yyhl281 {
  6375  		yyb281 = yyj281 > l
  6376  	} else {
  6377  		yyb281 = z.DecCheckBreak()
  6378  	}
  6379  	if yyb281 {
  6380  		z.DecReadArrayEnd()
  6381  		return
  6382  	}
  6383  	z.DecReadArrayElem()
  6384  	z.F.DecMapIntFloat64X(&x.FMapIntFloat64, d)
  6385  	yyj281++
  6386  	if yyhl281 {
  6387  		yyb281 = yyj281 > l
  6388  	} else {
  6389  		yyb281 = z.DecCheckBreak()
  6390  	}
  6391  	if yyb281 {
  6392  		z.DecReadArrayEnd()
  6393  		return
  6394  	}
  6395  	z.DecReadArrayElem()
  6396  	if r.TryNil() {
  6397  		if x.FptrMapIntFloat64 != nil { // remove the if-true
  6398  			x.FptrMapIntFloat64 = nil
  6399  		}
  6400  	} else {
  6401  		if x.FptrMapIntFloat64 == nil {
  6402  			x.FptrMapIntFloat64 = new(map[int]float64)
  6403  		}
  6404  		z.F.DecMapIntFloat64X(x.FptrMapIntFloat64, d)
  6405  	}
  6406  	yyj281++
  6407  	if yyhl281 {
  6408  		yyb281 = yyj281 > l
  6409  	} else {
  6410  		yyb281 = z.DecCheckBreak()
  6411  	}
  6412  	if yyb281 {
  6413  		z.DecReadArrayEnd()
  6414  		return
  6415  	}
  6416  	z.DecReadArrayElem()
  6417  	z.F.DecMapIntBoolX(&x.FMapIntBool, d)
  6418  	yyj281++
  6419  	if yyhl281 {
  6420  		yyb281 = yyj281 > l
  6421  	} else {
  6422  		yyb281 = z.DecCheckBreak()
  6423  	}
  6424  	if yyb281 {
  6425  		z.DecReadArrayEnd()
  6426  		return
  6427  	}
  6428  	z.DecReadArrayElem()
  6429  	if r.TryNil() {
  6430  		if x.FptrMapIntBool != nil { // remove the if-true
  6431  			x.FptrMapIntBool = nil
  6432  		}
  6433  	} else {
  6434  		if x.FptrMapIntBool == nil {
  6435  			x.FptrMapIntBool = new(map[int]bool)
  6436  		}
  6437  		z.F.DecMapIntBoolX(x.FptrMapIntBool, d)
  6438  	}
  6439  	yyj281++
  6440  	if yyhl281 {
  6441  		yyb281 = yyj281 > l
  6442  	} else {
  6443  		yyb281 = z.DecCheckBreak()
  6444  	}
  6445  	if yyb281 {
  6446  		z.DecReadArrayEnd()
  6447  		return
  6448  	}
  6449  	z.DecReadArrayElem()
  6450  	z.F.DecMapInt32IntfX(&x.FMapInt32Intf, d)
  6451  	yyj281++
  6452  	if yyhl281 {
  6453  		yyb281 = yyj281 > l
  6454  	} else {
  6455  		yyb281 = z.DecCheckBreak()
  6456  	}
  6457  	if yyb281 {
  6458  		z.DecReadArrayEnd()
  6459  		return
  6460  	}
  6461  	z.DecReadArrayElem()
  6462  	if r.TryNil() {
  6463  		if x.FptrMapInt32Intf != nil { // remove the if-true
  6464  			x.FptrMapInt32Intf = nil
  6465  		}
  6466  	} else {
  6467  		if x.FptrMapInt32Intf == nil {
  6468  			x.FptrMapInt32Intf = new(map[int32]interface{})
  6469  		}
  6470  		z.F.DecMapInt32IntfX(x.FptrMapInt32Intf, d)
  6471  	}
  6472  	yyj281++
  6473  	if yyhl281 {
  6474  		yyb281 = yyj281 > l
  6475  	} else {
  6476  		yyb281 = z.DecCheckBreak()
  6477  	}
  6478  	if yyb281 {
  6479  		z.DecReadArrayEnd()
  6480  		return
  6481  	}
  6482  	z.DecReadArrayElem()
  6483  	z.F.DecMapInt32StringX(&x.FMapInt32String, d)
  6484  	yyj281++
  6485  	if yyhl281 {
  6486  		yyb281 = yyj281 > l
  6487  	} else {
  6488  		yyb281 = z.DecCheckBreak()
  6489  	}
  6490  	if yyb281 {
  6491  		z.DecReadArrayEnd()
  6492  		return
  6493  	}
  6494  	z.DecReadArrayElem()
  6495  	if r.TryNil() {
  6496  		if x.FptrMapInt32String != nil { // remove the if-true
  6497  			x.FptrMapInt32String = nil
  6498  		}
  6499  	} else {
  6500  		if x.FptrMapInt32String == nil {
  6501  			x.FptrMapInt32String = new(map[int32]string)
  6502  		}
  6503  		z.F.DecMapInt32StringX(x.FptrMapInt32String, d)
  6504  	}
  6505  	yyj281++
  6506  	if yyhl281 {
  6507  		yyb281 = yyj281 > l
  6508  	} else {
  6509  		yyb281 = z.DecCheckBreak()
  6510  	}
  6511  	if yyb281 {
  6512  		z.DecReadArrayEnd()
  6513  		return
  6514  	}
  6515  	z.DecReadArrayElem()
  6516  	z.F.DecMapInt32BytesX(&x.FMapInt32Bytes, d)
  6517  	yyj281++
  6518  	if yyhl281 {
  6519  		yyb281 = yyj281 > l
  6520  	} else {
  6521  		yyb281 = z.DecCheckBreak()
  6522  	}
  6523  	if yyb281 {
  6524  		z.DecReadArrayEnd()
  6525  		return
  6526  	}
  6527  	z.DecReadArrayElem()
  6528  	if r.TryNil() {
  6529  		if x.FptrMapInt32Bytes != nil { // remove the if-true
  6530  			x.FptrMapInt32Bytes = nil
  6531  		}
  6532  	} else {
  6533  		if x.FptrMapInt32Bytes == nil {
  6534  			x.FptrMapInt32Bytes = new(map[int32][]uint8)
  6535  		}
  6536  		z.F.DecMapInt32BytesX(x.FptrMapInt32Bytes, d)
  6537  	}
  6538  	yyj281++
  6539  	if yyhl281 {
  6540  		yyb281 = yyj281 > l
  6541  	} else {
  6542  		yyb281 = z.DecCheckBreak()
  6543  	}
  6544  	if yyb281 {
  6545  		z.DecReadArrayEnd()
  6546  		return
  6547  	}
  6548  	z.DecReadArrayElem()
  6549  	z.F.DecMapInt32Uint8X(&x.FMapInt32Uint8, d)
  6550  	yyj281++
  6551  	if yyhl281 {
  6552  		yyb281 = yyj281 > l
  6553  	} else {
  6554  		yyb281 = z.DecCheckBreak()
  6555  	}
  6556  	if yyb281 {
  6557  		z.DecReadArrayEnd()
  6558  		return
  6559  	}
  6560  	z.DecReadArrayElem()
  6561  	if r.TryNil() {
  6562  		if x.FptrMapInt32Uint8 != nil { // remove the if-true
  6563  			x.FptrMapInt32Uint8 = nil
  6564  		}
  6565  	} else {
  6566  		if x.FptrMapInt32Uint8 == nil {
  6567  			x.FptrMapInt32Uint8 = new(map[int32]uint8)
  6568  		}
  6569  		z.F.DecMapInt32Uint8X(x.FptrMapInt32Uint8, d)
  6570  	}
  6571  	yyj281++
  6572  	if yyhl281 {
  6573  		yyb281 = yyj281 > l
  6574  	} else {
  6575  		yyb281 = z.DecCheckBreak()
  6576  	}
  6577  	if yyb281 {
  6578  		z.DecReadArrayEnd()
  6579  		return
  6580  	}
  6581  	z.DecReadArrayElem()
  6582  	z.F.DecMapInt32Uint64X(&x.FMapInt32Uint64, d)
  6583  	yyj281++
  6584  	if yyhl281 {
  6585  		yyb281 = yyj281 > l
  6586  	} else {
  6587  		yyb281 = z.DecCheckBreak()
  6588  	}
  6589  	if yyb281 {
  6590  		z.DecReadArrayEnd()
  6591  		return
  6592  	}
  6593  	z.DecReadArrayElem()
  6594  	if r.TryNil() {
  6595  		if x.FptrMapInt32Uint64 != nil { // remove the if-true
  6596  			x.FptrMapInt32Uint64 = nil
  6597  		}
  6598  	} else {
  6599  		if x.FptrMapInt32Uint64 == nil {
  6600  			x.FptrMapInt32Uint64 = new(map[int32]uint64)
  6601  		}
  6602  		z.F.DecMapInt32Uint64X(x.FptrMapInt32Uint64, d)
  6603  	}
  6604  	yyj281++
  6605  	if yyhl281 {
  6606  		yyb281 = yyj281 > l
  6607  	} else {
  6608  		yyb281 = z.DecCheckBreak()
  6609  	}
  6610  	if yyb281 {
  6611  		z.DecReadArrayEnd()
  6612  		return
  6613  	}
  6614  	z.DecReadArrayElem()
  6615  	z.F.DecMapInt32IntX(&x.FMapInt32Int, d)
  6616  	yyj281++
  6617  	if yyhl281 {
  6618  		yyb281 = yyj281 > l
  6619  	} else {
  6620  		yyb281 = z.DecCheckBreak()
  6621  	}
  6622  	if yyb281 {
  6623  		z.DecReadArrayEnd()
  6624  		return
  6625  	}
  6626  	z.DecReadArrayElem()
  6627  	if r.TryNil() {
  6628  		if x.FptrMapInt32Int != nil { // remove the if-true
  6629  			x.FptrMapInt32Int = nil
  6630  		}
  6631  	} else {
  6632  		if x.FptrMapInt32Int == nil {
  6633  			x.FptrMapInt32Int = new(map[int32]int)
  6634  		}
  6635  		z.F.DecMapInt32IntX(x.FptrMapInt32Int, d)
  6636  	}
  6637  	yyj281++
  6638  	if yyhl281 {
  6639  		yyb281 = yyj281 > l
  6640  	} else {
  6641  		yyb281 = z.DecCheckBreak()
  6642  	}
  6643  	if yyb281 {
  6644  		z.DecReadArrayEnd()
  6645  		return
  6646  	}
  6647  	z.DecReadArrayElem()
  6648  	z.F.DecMapInt32Int32X(&x.FMapInt32Int32, d)
  6649  	yyj281++
  6650  	if yyhl281 {
  6651  		yyb281 = yyj281 > l
  6652  	} else {
  6653  		yyb281 = z.DecCheckBreak()
  6654  	}
  6655  	if yyb281 {
  6656  		z.DecReadArrayEnd()
  6657  		return
  6658  	}
  6659  	z.DecReadArrayElem()
  6660  	if r.TryNil() {
  6661  		if x.FptrMapInt32Int32 != nil { // remove the if-true
  6662  			x.FptrMapInt32Int32 = nil
  6663  		}
  6664  	} else {
  6665  		if x.FptrMapInt32Int32 == nil {
  6666  			x.FptrMapInt32Int32 = new(map[int32]int32)
  6667  		}
  6668  		z.F.DecMapInt32Int32X(x.FptrMapInt32Int32, d)
  6669  	}
  6670  	yyj281++
  6671  	if yyhl281 {
  6672  		yyb281 = yyj281 > l
  6673  	} else {
  6674  		yyb281 = z.DecCheckBreak()
  6675  	}
  6676  	if yyb281 {
  6677  		z.DecReadArrayEnd()
  6678  		return
  6679  	}
  6680  	z.DecReadArrayElem()
  6681  	z.F.DecMapInt32Float64X(&x.FMapInt32Float64, d)
  6682  	yyj281++
  6683  	if yyhl281 {
  6684  		yyb281 = yyj281 > l
  6685  	} else {
  6686  		yyb281 = z.DecCheckBreak()
  6687  	}
  6688  	if yyb281 {
  6689  		z.DecReadArrayEnd()
  6690  		return
  6691  	}
  6692  	z.DecReadArrayElem()
  6693  	if r.TryNil() {
  6694  		if x.FptrMapInt32Float64 != nil { // remove the if-true
  6695  			x.FptrMapInt32Float64 = nil
  6696  		}
  6697  	} else {
  6698  		if x.FptrMapInt32Float64 == nil {
  6699  			x.FptrMapInt32Float64 = new(map[int32]float64)
  6700  		}
  6701  		z.F.DecMapInt32Float64X(x.FptrMapInt32Float64, d)
  6702  	}
  6703  	yyj281++
  6704  	if yyhl281 {
  6705  		yyb281 = yyj281 > l
  6706  	} else {
  6707  		yyb281 = z.DecCheckBreak()
  6708  	}
  6709  	if yyb281 {
  6710  		z.DecReadArrayEnd()
  6711  		return
  6712  	}
  6713  	z.DecReadArrayElem()
  6714  	z.F.DecMapInt32BoolX(&x.FMapInt32Bool, d)
  6715  	yyj281++
  6716  	if yyhl281 {
  6717  		yyb281 = yyj281 > l
  6718  	} else {
  6719  		yyb281 = z.DecCheckBreak()
  6720  	}
  6721  	if yyb281 {
  6722  		z.DecReadArrayEnd()
  6723  		return
  6724  	}
  6725  	z.DecReadArrayElem()
  6726  	if r.TryNil() {
  6727  		if x.FptrMapInt32Bool != nil { // remove the if-true
  6728  			x.FptrMapInt32Bool = nil
  6729  		}
  6730  	} else {
  6731  		if x.FptrMapInt32Bool == nil {
  6732  			x.FptrMapInt32Bool = new(map[int32]bool)
  6733  		}
  6734  		z.F.DecMapInt32BoolX(x.FptrMapInt32Bool, d)
  6735  	}
  6736  	for {
  6737  		yyj281++
  6738  		if yyhl281 {
  6739  			yyb281 = yyj281 > l
  6740  		} else {
  6741  			yyb281 = z.DecCheckBreak()
  6742  		}
  6743  		if yyb281 {
  6744  			break
  6745  		}
  6746  		z.DecReadArrayElem()
  6747  		z.DecStructFieldNotFound(yyj281-1, "")
  6748  	}
  6749  }
  6750  
  6751  func (x *TestMammoth2) IsCodecEmpty() bool {
  6752  	return !(x.FIntf != nil || x.FString != "" || len(x.FBytes) != 0 || x.FFloat32 != 0 || x.FFloat64 != 0 || x.FUint != 0 || x.FUint8 != 0 || x.FUint16 != 0 || x.FUint32 != 0 || x.FUint64 != 0 || x.FUintptr != 0 || x.FInt != 0 || x.FInt8 != 0 || x.FInt16 != 0 || x.FInt32 != 0 || x.FInt64 != 0 || bool(x.FBool) || len(x.FSliceIntf) != 0 || len(x.FSliceString) != 0 || len(x.FSliceBytes) != 0 || len(x.FSliceFloat32) != 0 || len(x.FSliceFloat64) != 0 || len(x.FSliceUint8) != 0 || len(x.FSliceUint64) != 0 || len(x.FSliceInt) != 0 || len(x.FSliceInt32) != 0 || len(x.FSliceInt64) != 0 || len(x.FSliceBool) != 0 || len(x.FMapStringIntf) != 0 || len(x.FMapStringString) != 0 || len(x.FMapStringBytes) != 0 || len(x.FMapStringUint8) != 0 || len(x.FMapStringUint64) != 0 || len(x.FMapStringInt) != 0 || len(x.FMapStringInt32) != 0 || len(x.FMapStringFloat64) != 0 || len(x.FMapStringBool) != 0 || len(x.FMapUint8Intf) != 0 || len(x.FMapUint8String) != 0 || len(x.FMapUint8Bytes) != 0 || len(x.FMapUint8Uint8) != 0 || len(x.FMapUint8Uint64) != 0 || len(x.FMapUint8Int) != 0 || len(x.FMapUint8Int32) != 0 || len(x.FMapUint8Float64) != 0 || len(x.FMapUint8Bool) != 0 || len(x.FMapUint64Intf) != 0 || len(x.FMapUint64String) != 0 || len(x.FMapUint64Bytes) != 0 || len(x.FMapUint64Uint8) != 0 || len(x.FMapUint64Uint64) != 0 || len(x.FMapUint64Int) != 0 || len(x.FMapUint64Int32) != 0 || len(x.FMapUint64Float64) != 0 || len(x.FMapUint64Bool) != 0 || len(x.FMapIntIntf) != 0 || len(x.FMapIntString) != 0 || len(x.FMapIntBytes) != 0 || len(x.FMapIntUint8) != 0 || len(x.FMapIntUint64) != 0 || len(x.FMapIntInt) != 0 || len(x.FMapIntInt32) != 0 || len(x.FMapIntFloat64) != 0 || len(x.FMapIntBool) != 0 || len(x.FMapInt32Intf) != 0 || len(x.FMapInt32String) != 0 || len(x.FMapInt32Bytes) != 0 || len(x.FMapInt32Uint8) != 0 || len(x.FMapInt32Uint64) != 0 || len(x.FMapInt32Int) != 0 || len(x.FMapInt32Int32) != 0 || len(x.FMapInt32Float64) != 0 || len(x.FMapInt32Bool) != 0 || false)
  6753  }
  6754  
  6755  func (testMammoth2Binary) codecSelferViaCodecgen() {}
  6756  func (x testMammoth2Binary) CodecEncodeSelf(e *Encoder) {
  6757  	var h codecSelfer19781
  6758  	z, r := GenHelper().Encoder(e)
  6759  	_, _, _ = h, z, r
  6760  	if z.EncBinary() {
  6761  		z.EncBinaryMarshal(x)
  6762  	} else {
  6763  		r.EncodeUint(uint64(x))
  6764  	}
  6765  }
  6766  
  6767  func (x *testMammoth2Binary) CodecDecodeSelf(d *Decoder) {
  6768  	var h codecSelfer19781
  6769  	z, r := GenHelper().Decoder(d)
  6770  	_, _, _ = h, z, r
  6771  	if z.DecBinary() {
  6772  		z.DecBinaryUnmarshal(x)
  6773  	} else {
  6774  		*x = (testMammoth2Binary)(r.DecodeUint64())
  6775  	}
  6776  }
  6777  
  6778  func (testMammoth2Text) codecSelferViaCodecgen() {}
  6779  func (x testMammoth2Text) CodecEncodeSelf(e *Encoder) {
  6780  	var h codecSelfer19781
  6781  	z, r := GenHelper().Encoder(e)
  6782  	_, _, _ = h, z, r
  6783  	if !z.EncBinary() {
  6784  		z.EncTextMarshal(x)
  6785  	} else {
  6786  		r.EncodeUint(uint64(x))
  6787  	}
  6788  }
  6789  
  6790  func (x *testMammoth2Text) CodecDecodeSelf(d *Decoder) {
  6791  	var h codecSelfer19781
  6792  	z, r := GenHelper().Decoder(d)
  6793  	_, _, _ = h, z, r
  6794  	if !z.DecBinary() {
  6795  		z.DecTextUnmarshal(x)
  6796  	} else {
  6797  		*x = (testMammoth2Text)(r.DecodeUint64())
  6798  	}
  6799  }
  6800  
  6801  func (testMammoth2Json) codecSelferViaCodecgen() {}
  6802  func (x testMammoth2Json) CodecEncodeSelf(e *Encoder) {
  6803  	var h codecSelfer19781
  6804  	z, r := GenHelper().Encoder(e)
  6805  	_, _, _ = h, z, r
  6806  	if !z.EncBinary() && z.IsJSONHandle() {
  6807  		z.EncJSONMarshal(x)
  6808  	} else {
  6809  		r.EncodeUint(uint64(x))
  6810  	}
  6811  }
  6812  
  6813  func (x *testMammoth2Json) CodecDecodeSelf(d *Decoder) {
  6814  	var h codecSelfer19781
  6815  	z, r := GenHelper().Decoder(d)
  6816  	_, _, _ = h, z, r
  6817  	if !z.DecBinary() && z.IsJSONHandle() {
  6818  		z.DecJSONUnmarshal(x)
  6819  	} else {
  6820  		*x = (testMammoth2Json)(r.DecodeUint64())
  6821  	}
  6822  }
  6823  
  6824  func (testMammoth2Basic) codecSelferViaCodecgen() {}
  6825  func (x *testMammoth2Basic) CodecEncodeSelf(e *Encoder) {
  6826  	var h codecSelfer19781
  6827  	z, r := GenHelper().Encoder(e)
  6828  	_, _, _ = h, z, r
  6829  	if x == nil {
  6830  		r.EncodeNil()
  6831  	} else {
  6832  		z.F.EncSliceUint64V(([]uint64)(x[:]), e)
  6833  	}
  6834  }
  6835  
  6836  func (x *testMammoth2Basic) CodecDecodeSelf(d *Decoder) {
  6837  	var h codecSelfer19781
  6838  	z, r := GenHelper().Decoder(d)
  6839  	_, _, _ = h, z, r
  6840  	z.F.DecSliceUint64N(([]uint64)(x[:]), d)
  6841  }
  6842  
  6843  func (TestMammoth2Wrapper) codecSelferViaCodecgen() {}
  6844  func (x *TestMammoth2Wrapper) CodecEncodeSelf(e *Encoder) {
  6845  	var h codecSelfer19781
  6846  	z, r := GenHelper().Encoder(e)
  6847  	_, _, _ = h, z, r
  6848  	if z.EncBasicHandle().CheckCircularRef {
  6849  		z.EncEncode(x)
  6850  		return
  6851  	}
  6852  	if x == nil {
  6853  		r.EncodeNil()
  6854  	} else {
  6855  		yy2arr2 := z.EncBasicHandle().StructToArray
  6856  		_ = yy2arr2
  6857  		const yyr2 bool = false // struct tag has 'toArray'
  6858  		var yyn14 bool = x.Tpbytes == nil
  6859  		if yyr2 || yy2arr2 {
  6860  			z.EncWriteArrayStart(12)
  6861  			z.EncWriteArrayElem()
  6862  			yy15 := &x.V
  6863  			if yyxt16 := z.Extension(yy15); yyxt16 != nil {
  6864  				z.EncExtension(yy15, yyxt16)
  6865  			} else {
  6866  				yy15.CodecEncodeSelf(e)
  6867  			}
  6868  			z.EncWriteArrayElem()
  6869  			if yyxt17 := z.Extension(x.T); yyxt17 != nil {
  6870  				z.EncExtension(x.T, yyxt17)
  6871  			} else {
  6872  				x.T.CodecEncodeSelf(e)
  6873  			}
  6874  			z.EncWriteArrayElem()
  6875  			if yyxt18 := z.Extension(x.B); yyxt18 != nil {
  6876  				z.EncExtension(x.B, yyxt18)
  6877  			} else {
  6878  				x.B.CodecEncodeSelf(e)
  6879  			}
  6880  			z.EncWriteArrayElem()
  6881  			if yyxt19 := z.Extension(x.J); yyxt19 != nil {
  6882  				z.EncExtension(x.J, yyxt19)
  6883  			} else {
  6884  				x.J.CodecEncodeSelf(e)
  6885  			}
  6886  			z.EncWriteArrayElem()
  6887  			yy20 := &x.C
  6888  			if yyxt21 := z.Extension(yy20); yyxt21 != nil {
  6889  				z.EncExtension(yy20, yyxt21)
  6890  			} else {
  6891  				yy20.CodecEncodeSelf(e)
  6892  			}
  6893  			z.EncWriteArrayElem()
  6894  			if x.M == nil {
  6895  				r.EncodeNil()
  6896  			} else {
  6897  				h.encMaptestMammoth2BasicTestMammoth2((map[testMammoth2Basic]TestMammoth2)(x.M), e)
  6898  			} // end block: if x.M map == nil
  6899  			z.EncWriteArrayElem()
  6900  			if x.L == nil {
  6901  				r.EncodeNil()
  6902  			} else {
  6903  				h.encSliceTestMammoth2(([]TestMammoth2)(x.L), e)
  6904  			} // end block: if x.L slice == nil
  6905  			z.EncWriteArrayElem()
  6906  			yy24 := &x.A
  6907  			h.encArray4int64((*[4]int64)(yy24), e)
  6908  			z.EncWriteArrayElem()
  6909  			z.EncEncodeComplex128(complex128(x.Tcomplex128))
  6910  			z.EncWriteArrayElem()
  6911  			z.EncEncodeComplex64(complex64(x.Tcomplex64))
  6912  			z.EncWriteArrayElem()
  6913  			if x.Tbytes == nil {
  6914  				r.EncodeNil()
  6915  			} else {
  6916  				r.EncodeStringBytesRaw([]byte(x.Tbytes))
  6917  			} // end block: if x.Tbytes slice == nil
  6918  			if yyn14 {
  6919  				z.EncWriteArrayElem()
  6920  				r.EncodeNil()
  6921  			} else {
  6922  				z.EncWriteArrayElem()
  6923  				yy29 := *x.Tpbytes
  6924  				if yy29 == nil {
  6925  					r.EncodeNil()
  6926  				} else {
  6927  					r.EncodeStringBytesRaw([]byte(yy29))
  6928  				} // end block: if yy29 slice == nil
  6929  			}
  6930  			z.EncWriteArrayEnd()
  6931  		} else {
  6932  			z.EncWriteMapStart(12)
  6933  			z.EncWriteMapElemKey()
  6934  			if z.IsJSONHandle() {
  6935  				z.WriteStr("\"V\"")
  6936  			} else {
  6937  				r.EncodeString(`V`)
  6938  			}
  6939  			z.EncWriteMapElemValue()
  6940  			yy31 := &x.V
  6941  			if yyxt32 := z.Extension(yy31); yyxt32 != nil {
  6942  				z.EncExtension(yy31, yyxt32)
  6943  			} else {
  6944  				yy31.CodecEncodeSelf(e)
  6945  			}
  6946  			z.EncWriteMapElemKey()
  6947  			if z.IsJSONHandle() {
  6948  				z.WriteStr("\"T\"")
  6949  			} else {
  6950  				r.EncodeString(`T`)
  6951  			}
  6952  			z.EncWriteMapElemValue()
  6953  			if yyxt33 := z.Extension(x.T); yyxt33 != nil {
  6954  				z.EncExtension(x.T, yyxt33)
  6955  			} else {
  6956  				x.T.CodecEncodeSelf(e)
  6957  			}
  6958  			z.EncWriteMapElemKey()
  6959  			if z.IsJSONHandle() {
  6960  				z.WriteStr("\"B\"")
  6961  			} else {
  6962  				r.EncodeString(`B`)
  6963  			}
  6964  			z.EncWriteMapElemValue()
  6965  			if yyxt34 := z.Extension(x.B); yyxt34 != nil {
  6966  				z.EncExtension(x.B, yyxt34)
  6967  			} else {
  6968  				x.B.CodecEncodeSelf(e)
  6969  			}
  6970  			z.EncWriteMapElemKey()
  6971  			if z.IsJSONHandle() {
  6972  				z.WriteStr("\"J\"")
  6973  			} else {
  6974  				r.EncodeString(`J`)
  6975  			}
  6976  			z.EncWriteMapElemValue()
  6977  			if yyxt35 := z.Extension(x.J); yyxt35 != nil {
  6978  				z.EncExtension(x.J, yyxt35)
  6979  			} else {
  6980  				x.J.CodecEncodeSelf(e)
  6981  			}
  6982  			z.EncWriteMapElemKey()
  6983  			if z.IsJSONHandle() {
  6984  				z.WriteStr("\"C\"")
  6985  			} else {
  6986  				r.EncodeString(`C`)
  6987  			}
  6988  			z.EncWriteMapElemValue()
  6989  			yy36 := &x.C
  6990  			if yyxt37 := z.Extension(yy36); yyxt37 != nil {
  6991  				z.EncExtension(yy36, yyxt37)
  6992  			} else {
  6993  				yy36.CodecEncodeSelf(e)
  6994  			}
  6995  			z.EncWriteMapElemKey()
  6996  			if z.IsJSONHandle() {
  6997  				z.WriteStr("\"M\"")
  6998  			} else {
  6999  				r.EncodeString(`M`)
  7000  			}
  7001  			z.EncWriteMapElemValue()
  7002  			if x.M == nil {
  7003  				r.EncodeNil()
  7004  			} else {
  7005  				h.encMaptestMammoth2BasicTestMammoth2((map[testMammoth2Basic]TestMammoth2)(x.M), e)
  7006  			} // end block: if x.M map == nil
  7007  			z.EncWriteMapElemKey()
  7008  			if z.IsJSONHandle() {
  7009  				z.WriteStr("\"L\"")
  7010  			} else {
  7011  				r.EncodeString(`L`)
  7012  			}
  7013  			z.EncWriteMapElemValue()
  7014  			if x.L == nil {
  7015  				r.EncodeNil()
  7016  			} else {
  7017  				h.encSliceTestMammoth2(([]TestMammoth2)(x.L), e)
  7018  			} // end block: if x.L slice == nil
  7019  			z.EncWriteMapElemKey()
  7020  			if z.IsJSONHandle() {
  7021  				z.WriteStr("\"A\"")
  7022  			} else {
  7023  				r.EncodeString(`A`)
  7024  			}
  7025  			z.EncWriteMapElemValue()
  7026  			yy40 := &x.A
  7027  			h.encArray4int64((*[4]int64)(yy40), e)
  7028  			z.EncWriteMapElemKey()
  7029  			if z.IsJSONHandle() {
  7030  				z.WriteStr("\"Tcomplex128\"")
  7031  			} else {
  7032  				r.EncodeString(`Tcomplex128`)
  7033  			}
  7034  			z.EncWriteMapElemValue()
  7035  			z.EncEncodeComplex128(complex128(x.Tcomplex128))
  7036  			z.EncWriteMapElemKey()
  7037  			if z.IsJSONHandle() {
  7038  				z.WriteStr("\"Tcomplex64\"")
  7039  			} else {
  7040  				r.EncodeString(`Tcomplex64`)
  7041  			}
  7042  			z.EncWriteMapElemValue()
  7043  			z.EncEncodeComplex64(complex64(x.Tcomplex64))
  7044  			z.EncWriteMapElemKey()
  7045  			if z.IsJSONHandle() {
  7046  				z.WriteStr("\"Tbytes\"")
  7047  			} else {
  7048  				r.EncodeString(`Tbytes`)
  7049  			}
  7050  			z.EncWriteMapElemValue()
  7051  			if x.Tbytes == nil {
  7052  				r.EncodeNil()
  7053  			} else {
  7054  				r.EncodeStringBytesRaw([]byte(x.Tbytes))
  7055  			} // end block: if x.Tbytes slice == nil
  7056  			z.EncWriteMapElemKey()
  7057  			if z.IsJSONHandle() {
  7058  				z.WriteStr("\"Tpbytes\"")
  7059  			} else {
  7060  				r.EncodeString(`Tpbytes`)
  7061  			}
  7062  			z.EncWriteMapElemValue()
  7063  			if yyn14 {
  7064  				r.EncodeNil()
  7065  			} else {
  7066  				yy45 := *x.Tpbytes
  7067  				if yy45 == nil {
  7068  					r.EncodeNil()
  7069  				} else {
  7070  					r.EncodeStringBytesRaw([]byte(yy45))
  7071  				} // end block: if yy45 slice == nil
  7072  			}
  7073  			z.EncWriteMapEnd()
  7074  		}
  7075  	}
  7076  }
  7077  
  7078  func (x *TestMammoth2Wrapper) CodecDecodeSelf(d *Decoder) {
  7079  	var h codecSelfer19781
  7080  	z, r := GenHelper().Decoder(d)
  7081  	_, _, _ = h, z, r
  7082  	yyct2 := r.ContainerType()
  7083  	if yyct2 == codecSelferValueTypeNil19781 {
  7084  		*(x) = TestMammoth2Wrapper{}
  7085  	} else if yyct2 == codecSelferValueTypeMap19781 {
  7086  		yyl2 := z.DecReadMapStart()
  7087  		if yyl2 == 0 {
  7088  		} else {
  7089  			x.codecDecodeSelfFromMap(yyl2, d)
  7090  		}
  7091  		z.DecReadMapEnd()
  7092  	} else if yyct2 == codecSelferValueTypeArray19781 {
  7093  		yyl2 := z.DecReadArrayStart()
  7094  		if yyl2 != 0 {
  7095  			x.codecDecodeSelfFromArray(yyl2, d)
  7096  		}
  7097  		z.DecReadArrayEnd()
  7098  	} else {
  7099  		panic(errCodecSelferOnlyMapOrArrayEncodeToStruct19781)
  7100  	}
  7101  }
  7102  
  7103  func (x *TestMammoth2Wrapper) codecDecodeSelfFromMap(l int, d *Decoder) {
  7104  	var h codecSelfer19781
  7105  	z, r := GenHelper().Decoder(d)
  7106  	_, _, _ = h, z, r
  7107  	var yyhl3 bool = l >= 0
  7108  	for yyj3 := 0; ; yyj3++ {
  7109  		if yyhl3 {
  7110  			if yyj3 >= l {
  7111  				break
  7112  			}
  7113  		} else {
  7114  			if z.DecCheckBreak() {
  7115  				break
  7116  			}
  7117  		}
  7118  		z.DecReadMapElemKey()
  7119  		yys3 := r.DecodeStringAsBytes()
  7120  		z.DecReadMapElemValue()
  7121  		switch string(yys3) {
  7122  		case "V":
  7123  			if yyxt5 := z.Extension(x.V); yyxt5 != nil {
  7124  				z.DecExtension(&x.V, yyxt5)
  7125  			} else {
  7126  				x.V.CodecDecodeSelf(d)
  7127  			}
  7128  		case "T":
  7129  			if yyxt7 := z.Extension(x.T); yyxt7 != nil {
  7130  				z.DecExtension(&x.T, yyxt7)
  7131  			} else {
  7132  				x.T.CodecDecodeSelf(d)
  7133  			}
  7134  		case "B":
  7135  			if yyxt9 := z.Extension(x.B); yyxt9 != nil {
  7136  				z.DecExtension(&x.B, yyxt9)
  7137  			} else {
  7138  				x.B.CodecDecodeSelf(d)
  7139  			}
  7140  		case "J":
  7141  			if yyxt11 := z.Extension(x.J); yyxt11 != nil {
  7142  				z.DecExtension(&x.J, yyxt11)
  7143  			} else {
  7144  				x.J.CodecDecodeSelf(d)
  7145  			}
  7146  		case "C":
  7147  			if yyxt13 := z.Extension(x.C); yyxt13 != nil {
  7148  				z.DecExtension(&x.C, yyxt13)
  7149  			} else {
  7150  				x.C.CodecDecodeSelf(d)
  7151  			}
  7152  		case "M":
  7153  			h.decMaptestMammoth2BasicTestMammoth2((*map[testMammoth2Basic]TestMammoth2)(&x.M), d)
  7154  		case "L":
  7155  			h.decSliceTestMammoth2((*[]TestMammoth2)(&x.L), d)
  7156  		case "A":
  7157  			h.decArray4int64((*[4]int64)(&x.A), d)
  7158  		case "Tcomplex128":
  7159  			x.Tcomplex128 = (complex128)(complex(r.DecodeFloat64(), 0))
  7160  		case "Tcomplex64":
  7161  			x.Tcomplex64 = (complex64)(complex(z.DecDecodeFloat32(), 0))
  7162  		case "Tbytes":
  7163  			x.Tbytes = z.DecodeBytesInto(([]byte)(x.Tbytes))
  7164  		case "Tpbytes":
  7165  			if r.TryNil() {
  7166  				if x.Tpbytes != nil { // remove the if-true
  7167  					x.Tpbytes = nil
  7168  				}
  7169  			} else {
  7170  				if x.Tpbytes == nil {
  7171  					x.Tpbytes = new([]uint8)
  7172  				}
  7173  				*x.Tpbytes = z.DecodeBytesInto(*(*[]byte)(x.Tpbytes))
  7174  			}
  7175  		default:
  7176  			z.DecStructFieldNotFound(-1, string(yys3))
  7177  		} // end switch yys3
  7178  	} // end for yyj3
  7179  }
  7180  
  7181  func (x *TestMammoth2Wrapper) codecDecodeSelfFromArray(l int, d *Decoder) {
  7182  	var h codecSelfer19781
  7183  	z, r := GenHelper().Decoder(d)
  7184  	_, _, _ = h, z, r
  7185  	var yyj26 int
  7186  	var yyb26 bool
  7187  	var yyhl26 bool = l >= 0
  7188  	yyj26++
  7189  	if yyhl26 {
  7190  		yyb26 = yyj26 > l
  7191  	} else {
  7192  		yyb26 = z.DecCheckBreak()
  7193  	}
  7194  	if yyb26 {
  7195  		z.DecReadArrayEnd()
  7196  		return
  7197  	}
  7198  	z.DecReadArrayElem()
  7199  	if yyxt28 := z.Extension(x.V); yyxt28 != nil {
  7200  		z.DecExtension(&x.V, yyxt28)
  7201  	} else {
  7202  		x.V.CodecDecodeSelf(d)
  7203  	}
  7204  	yyj26++
  7205  	if yyhl26 {
  7206  		yyb26 = yyj26 > l
  7207  	} else {
  7208  		yyb26 = z.DecCheckBreak()
  7209  	}
  7210  	if yyb26 {
  7211  		z.DecReadArrayEnd()
  7212  		return
  7213  	}
  7214  	z.DecReadArrayElem()
  7215  	if yyxt30 := z.Extension(x.T); yyxt30 != nil {
  7216  		z.DecExtension(&x.T, yyxt30)
  7217  	} else {
  7218  		x.T.CodecDecodeSelf(d)
  7219  	}
  7220  	yyj26++
  7221  	if yyhl26 {
  7222  		yyb26 = yyj26 > l
  7223  	} else {
  7224  		yyb26 = z.DecCheckBreak()
  7225  	}
  7226  	if yyb26 {
  7227  		z.DecReadArrayEnd()
  7228  		return
  7229  	}
  7230  	z.DecReadArrayElem()
  7231  	if yyxt32 := z.Extension(x.B); yyxt32 != nil {
  7232  		z.DecExtension(&x.B, yyxt32)
  7233  	} else {
  7234  		x.B.CodecDecodeSelf(d)
  7235  	}
  7236  	yyj26++
  7237  	if yyhl26 {
  7238  		yyb26 = yyj26 > l
  7239  	} else {
  7240  		yyb26 = z.DecCheckBreak()
  7241  	}
  7242  	if yyb26 {
  7243  		z.DecReadArrayEnd()
  7244  		return
  7245  	}
  7246  	z.DecReadArrayElem()
  7247  	if yyxt34 := z.Extension(x.J); yyxt34 != nil {
  7248  		z.DecExtension(&x.J, yyxt34)
  7249  	} else {
  7250  		x.J.CodecDecodeSelf(d)
  7251  	}
  7252  	yyj26++
  7253  	if yyhl26 {
  7254  		yyb26 = yyj26 > l
  7255  	} else {
  7256  		yyb26 = z.DecCheckBreak()
  7257  	}
  7258  	if yyb26 {
  7259  		z.DecReadArrayEnd()
  7260  		return
  7261  	}
  7262  	z.DecReadArrayElem()
  7263  	if yyxt36 := z.Extension(x.C); yyxt36 != nil {
  7264  		z.DecExtension(&x.C, yyxt36)
  7265  	} else {
  7266  		x.C.CodecDecodeSelf(d)
  7267  	}
  7268  	yyj26++
  7269  	if yyhl26 {
  7270  		yyb26 = yyj26 > l
  7271  	} else {
  7272  		yyb26 = z.DecCheckBreak()
  7273  	}
  7274  	if yyb26 {
  7275  		z.DecReadArrayEnd()
  7276  		return
  7277  	}
  7278  	z.DecReadArrayElem()
  7279  	h.decMaptestMammoth2BasicTestMammoth2((*map[testMammoth2Basic]TestMammoth2)(&x.M), d)
  7280  	yyj26++
  7281  	if yyhl26 {
  7282  		yyb26 = yyj26 > l
  7283  	} else {
  7284  		yyb26 = z.DecCheckBreak()
  7285  	}
  7286  	if yyb26 {
  7287  		z.DecReadArrayEnd()
  7288  		return
  7289  	}
  7290  	z.DecReadArrayElem()
  7291  	h.decSliceTestMammoth2((*[]TestMammoth2)(&x.L), d)
  7292  	yyj26++
  7293  	if yyhl26 {
  7294  		yyb26 = yyj26 > l
  7295  	} else {
  7296  		yyb26 = z.DecCheckBreak()
  7297  	}
  7298  	if yyb26 {
  7299  		z.DecReadArrayEnd()
  7300  		return
  7301  	}
  7302  	z.DecReadArrayElem()
  7303  	h.decArray4int64((*[4]int64)(&x.A), d)
  7304  	yyj26++
  7305  	if yyhl26 {
  7306  		yyb26 = yyj26 > l
  7307  	} else {
  7308  		yyb26 = z.DecCheckBreak()
  7309  	}
  7310  	if yyb26 {
  7311  		z.DecReadArrayEnd()
  7312  		return
  7313  	}
  7314  	z.DecReadArrayElem()
  7315  	x.Tcomplex128 = (complex128)(complex(r.DecodeFloat64(), 0))
  7316  	yyj26++
  7317  	if yyhl26 {
  7318  		yyb26 = yyj26 > l
  7319  	} else {
  7320  		yyb26 = z.DecCheckBreak()
  7321  	}
  7322  	if yyb26 {
  7323  		z.DecReadArrayEnd()
  7324  		return
  7325  	}
  7326  	z.DecReadArrayElem()
  7327  	x.Tcomplex64 = (complex64)(complex(z.DecDecodeFloat32(), 0))
  7328  	yyj26++
  7329  	if yyhl26 {
  7330  		yyb26 = yyj26 > l
  7331  	} else {
  7332  		yyb26 = z.DecCheckBreak()
  7333  	}
  7334  	if yyb26 {
  7335  		z.DecReadArrayEnd()
  7336  		return
  7337  	}
  7338  	z.DecReadArrayElem()
  7339  	x.Tbytes = z.DecodeBytesInto(([]byte)(x.Tbytes))
  7340  	yyj26++
  7341  	if yyhl26 {
  7342  		yyb26 = yyj26 > l
  7343  	} else {
  7344  		yyb26 = z.DecCheckBreak()
  7345  	}
  7346  	if yyb26 {
  7347  		z.DecReadArrayEnd()
  7348  		return
  7349  	}
  7350  	z.DecReadArrayElem()
  7351  	if r.TryNil() {
  7352  		if x.Tpbytes != nil { // remove the if-true
  7353  			x.Tpbytes = nil
  7354  		}
  7355  	} else {
  7356  		if x.Tpbytes == nil {
  7357  			x.Tpbytes = new([]uint8)
  7358  		}
  7359  		*x.Tpbytes = z.DecodeBytesInto(*(*[]byte)(x.Tpbytes))
  7360  	}
  7361  	for {
  7362  		yyj26++
  7363  		if yyhl26 {
  7364  			yyb26 = yyj26 > l
  7365  		} else {
  7366  			yyb26 = z.DecCheckBreak()
  7367  		}
  7368  		if yyb26 {
  7369  			break
  7370  		}
  7371  		z.DecReadArrayElem()
  7372  		z.DecStructFieldNotFound(yyj26-1, "")
  7373  	}
  7374  }
  7375  
  7376  func (x *TestMammoth2Wrapper) IsCodecEmpty() bool {
  7377  	return !(!(x.V.IsCodecEmpty()) || x.T != 0 || x.B != 0 || x.J != 0 || len(x.C) != 0 || len(x.M) != 0 || len(x.L) != 0 || len(x.A) != 0 || x.Tcomplex128 != 0 || x.Tcomplex64 != 0 || len(x.Tbytes) != 0 || false)
  7378  }
  7379  
  7380  func (x codecSelfer19781) encMaptestMammoth2BasicTestMammoth2(v map[testMammoth2Basic]TestMammoth2, e *Encoder) {
  7381  	var h codecSelfer19781
  7382  	z, r := GenHelper().Encoder(e)
  7383  	_, _, _ = h, z, r
  7384  	if v == nil {
  7385  		r.EncodeNil()
  7386  	} else if z.EncBasicHandle().Canonical {
  7387  		z.EncEncodeMapNonNil(v)
  7388  	} else {
  7389  		z.EncWriteMapStart(len(v))
  7390  		for yyk1, yyv1 := range v {
  7391  			z.EncWriteMapElemKey()
  7392  			yy2 := &yyk1
  7393  			if yyxt3 := z.Extension(yy2); yyxt3 != nil {
  7394  				z.EncExtension(yy2, yyxt3)
  7395  			} else {
  7396  				yy2.CodecEncodeSelf(e)
  7397  			}
  7398  			z.EncWriteMapElemValue()
  7399  			yy4 := &yyv1
  7400  			if yyxt5 := z.Extension(yy4); yyxt5 != nil {
  7401  				z.EncExtension(yy4, yyxt5)
  7402  			} else {
  7403  				yy4.CodecEncodeSelf(e)
  7404  			}
  7405  		}
  7406  		z.EncWriteMapEnd()
  7407  	}
  7408  }
  7409  
  7410  func (x codecSelfer19781) decMaptestMammoth2BasicTestMammoth2(v *map[testMammoth2Basic]TestMammoth2, d *Decoder) {
  7411  	var h codecSelfer19781
  7412  	z, r := GenHelper().Decoder(d)
  7413  	_, _, _ = h, z, r
  7414  
  7415  	yyv1 := *v
  7416  	yyl1 := z.DecReadMapStart()
  7417  	if yyl1 == codecSelferDecContainerLenNil19781 {
  7418  		*v = nil
  7419  	} else {
  7420  		if yyv1 == nil {
  7421  			yyrl1 := z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 1408)
  7422  			yyv1 = make(map[testMammoth2Basic]TestMammoth2, yyrl1)
  7423  			*v = yyv1
  7424  		}
  7425  		var yymk1 testMammoth2Basic
  7426  		var yymv1 TestMammoth2
  7427  		var yymg1, yymdn1 bool
  7428  		if z.DecBasicHandle().MapValueReset {
  7429  			yymg1 = true
  7430  		}
  7431  		if yyl1 != 0 {
  7432  			yyhl1 := yyl1 > 0
  7433  			for yyj1 := 0; (yyhl1 && yyj1 < yyl1) || !(yyhl1 || z.DecCheckBreak()); yyj1++ {
  7434  				z.DecReadMapElemKey()
  7435  				if yyxt3 := z.Extension(yymk1); yyxt3 != nil {
  7436  					z.DecExtension(&yymk1, yyxt3)
  7437  				} else {
  7438  					yymk1.CodecDecodeSelf(d)
  7439  				}
  7440  				if yymg1 {
  7441  					yymv1 = yyv1[yymk1]
  7442  				} else {
  7443  					yymv1 = TestMammoth2{}
  7444  				}
  7445  				z.DecReadMapElemValue()
  7446  				yymdn1 = false
  7447  				if yyxt5 := z.Extension(yymv1); yyxt5 != nil {
  7448  					z.DecExtension(&yymv1, yyxt5)
  7449  				} else {
  7450  					yymv1.CodecDecodeSelf(d)
  7451  				}
  7452  				if yymdn1 {
  7453  					yyv1[yymk1] = TestMammoth2{}
  7454  				} else {
  7455  					yyv1[yymk1] = yymv1
  7456  				}
  7457  			}
  7458  		} // else len==0: leave as-is (do not clear map entries)
  7459  		z.DecReadMapEnd()
  7460  	}
  7461  }
  7462  
  7463  func (x codecSelfer19781) encSliceTestMammoth2(v []TestMammoth2, e *Encoder) {
  7464  	var h codecSelfer19781
  7465  	z, r := GenHelper().Encoder(e)
  7466  	_, _, _ = h, z, r
  7467  	if v == nil {
  7468  		r.EncodeNil()
  7469  		return
  7470  	}
  7471  	z.EncWriteArrayStart(len(v))
  7472  	for yyv1 := range v {
  7473  		z.EncWriteArrayElem()
  7474  		yy2 := &v[yyv1]
  7475  		if yyxt3 := z.Extension(yy2); yyxt3 != nil {
  7476  			z.EncExtension(yy2, yyxt3)
  7477  		} else {
  7478  			yy2.CodecEncodeSelf(e)
  7479  		}
  7480  	}
  7481  	z.EncWriteArrayEnd()
  7482  }
  7483  
  7484  func (x codecSelfer19781) decSliceTestMammoth2(v *[]TestMammoth2, d *Decoder) {
  7485  	var h codecSelfer19781
  7486  	z, r := GenHelper().Decoder(d)
  7487  	_, _, _ = h, z, r
  7488  
  7489  	yyv1 := *v
  7490  	yyh1, yyl1 := z.DecSliceHelperStart()
  7491  	var yyc1 bool
  7492  	_ = yyc1
  7493  	if yyh1.IsNil {
  7494  		if yyv1 != nil {
  7495  			yyv1 = nil
  7496  			yyc1 = true
  7497  		}
  7498  	} else if yyl1 == 0 {
  7499  		if yyv1 == nil {
  7500  			yyv1 = []TestMammoth2{}
  7501  			yyc1 = true
  7502  		} else if len(yyv1) != 0 {
  7503  			yyv1 = yyv1[:0]
  7504  			yyc1 = true
  7505  		}
  7506  	} else {
  7507  		yyhl1 := yyl1 > 0
  7508  		var yyrl1 int
  7509  		_ = yyrl1
  7510  		if yyhl1 {
  7511  			if yyl1 > cap(yyv1) {
  7512  				yyrl1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 1376)
  7513  				if yyrl1 <= cap(yyv1) {
  7514  					yyv1 = yyv1[:yyrl1]
  7515  				} else {
  7516  					yyv1 = make([]TestMammoth2, yyrl1)
  7517  				}
  7518  				yyc1 = true
  7519  			} else if yyl1 != len(yyv1) {
  7520  				yyv1 = yyv1[:yyl1]
  7521  				yyc1 = true
  7522  			}
  7523  		}
  7524  		var yyj1 int
  7525  		for yyj1 = 0; (yyhl1 && yyj1 < yyl1) || !(yyhl1 || z.DecCheckBreak()); yyj1++ { // bounds-check-elimination
  7526  			if yyj1 == 0 && yyv1 == nil {
  7527  				if yyhl1 {
  7528  					yyrl1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 1376)
  7529  				} else {
  7530  					yyrl1 = 8
  7531  				}
  7532  				yyv1 = make([]TestMammoth2, yyrl1)
  7533  				yyc1 = true
  7534  			}
  7535  			yyh1.ElemContainerState(yyj1)
  7536  			var yydb1 bool
  7537  			if yyj1 >= len(yyv1) {
  7538  				yyv1 = append(yyv1, TestMammoth2{})
  7539  				yyc1 = true
  7540  			}
  7541  			if yydb1 {
  7542  				z.DecSwallow()
  7543  			} else {
  7544  				if yyxt3 := z.Extension(yyv1[yyj1]); yyxt3 != nil {
  7545  					z.DecExtension(&yyv1[yyj1], yyxt3)
  7546  				} else {
  7547  					yyv1[yyj1].CodecDecodeSelf(d)
  7548  				}
  7549  			}
  7550  		}
  7551  		if yyj1 < len(yyv1) {
  7552  			yyv1 = yyv1[:yyj1]
  7553  			yyc1 = true
  7554  		} else if yyj1 == 0 && yyv1 == nil {
  7555  			yyv1 = make([]TestMammoth2, 0)
  7556  			yyc1 = true
  7557  		}
  7558  	}
  7559  	yyh1.End()
  7560  	if yyc1 {
  7561  		*v = yyv1
  7562  	}
  7563  }
  7564  
  7565  func (x codecSelfer19781) encArray4int64(v *[4]int64, e *Encoder) {
  7566  	var h codecSelfer19781
  7567  	z, r := GenHelper().Encoder(e)
  7568  	_, _, _ = h, z, r
  7569  	if v == nil {
  7570  		r.EncodeNil()
  7571  		return
  7572  	}
  7573  	z.EncWriteArrayStart(len(v))
  7574  	for yyv1 := range v {
  7575  		z.EncWriteArrayElem()
  7576  		r.EncodeInt(int64(v[yyv1]))
  7577  	}
  7578  	z.EncWriteArrayEnd()
  7579  }
  7580  
  7581  func (x codecSelfer19781) decArray4int64(v *[4]int64, d *Decoder) {
  7582  	var h codecSelfer19781
  7583  	z, r := GenHelper().Decoder(d)
  7584  	_, _, _ = h, z, r
  7585  
  7586  	yyv1 := v
  7587  	yyh1, yyl1 := z.DecSliceHelperStart()
  7588  	if yyl1 == 0 {
  7589  	} else {
  7590  		yyhl1 := yyl1 > 0
  7591  		var yyrl1 int
  7592  		_ = yyrl1
  7593  		var yyj1 int
  7594  		for yyj1 = 0; (yyhl1 && yyj1 < yyl1) || !(yyhl1 || z.DecCheckBreak()); yyj1++ { // bounds-check-elimination
  7595  			yyh1.ElemContainerState(yyj1)
  7596  			var yydb1 bool
  7597  			if yyj1 >= len(yyv1) {
  7598  				z.DecArrayCannotExpand(len(v), yyj1+1)
  7599  				yydb1 = true
  7600  			}
  7601  			if yydb1 {
  7602  				z.DecSwallow()
  7603  			} else {
  7604  				yyv1[yyj1] = (int64)(r.DecodeInt64())
  7605  			}
  7606  		}
  7607  	}
  7608  	yyh1.End()
  7609  }