lib/protocol, lib/discover, lib/db: Use protocol buffer serialization (fixes #3080)

This changes the BEP protocol to use protocol buffer serialization
instead of XDR, and therefore also the database format. The local
discovery protocol is also updated to be protocol buffer format.

GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3276
LGTM: AudriusButkevicius
This commit is contained in:
Jakob Borg
2016-07-04 10:40:29 +00:00
committed by Audrius Butkevicius
parent 21f5b16e47
commit fa0101bd60
269 changed files with 477296 additions and 4175 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,31 @@
// Extensions for Protocol Buffers to create more go like structures.
//
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package castvalue
type MyWilson Wilson

View File

@@ -0,0 +1,978 @@
// Code generated by protoc-gen-gogo.
// source: combos/marshaler/castvalue.proto
// DO NOT EDIT!
/*
Package castvalue is a generated protocol buffer package.
It is generated from these files:
combos/marshaler/castvalue.proto
It has these top-level messages:
Castaway
Wilson
*/
package castvalue
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "github.com/gogo/protobuf/gogoproto"
import github_com_gogo_protobuf_protoc_gen_gogo_descriptor "github.com/gogo/protobuf/protoc-gen-gogo/descriptor"
import github_com_gogo_protobuf_proto "github.com/gogo/protobuf/proto"
import compress_gzip "compress/gzip"
import bytes "bytes"
import io_ioutil "io/ioutil"
import strings "strings"
import sort "sort"
import strconv "strconv"
import reflect "reflect"
import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys"
import errors "errors"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type Castaway struct {
CastMapValueMessage map[int32]MyWilson `protobuf:"bytes,1,rep,name=CastMapValueMessage,json=castMapValueMessage,castvalue=MyWilson,castvaluetype=castvalue.Wilson" json:"CastMapValueMessage" protobuf_key:"varint,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
CastMapValueMessageNullable map[int32]*MyWilson `protobuf:"bytes,2,rep,name=CastMapValueMessageNullable,json=castMapValueMessageNullable,castvalue=MyWilson,castvaluetype=castvalue.Wilson" json:"CastMapValueMessageNullable,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
XXX_unrecognized []byte `json:"-"`
}
func (m *Castaway) Reset() { *m = Castaway{} }
func (*Castaway) ProtoMessage() {}
func (*Castaway) Descriptor() ([]byte, []int) { return fileDescriptorCastvalue, []int{0} }
type Wilson struct {
Int64 *int64 `protobuf:"varint,1,opt,name=Int64,json=int64" json:"Int64,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *Wilson) Reset() { *m = Wilson{} }
func (*Wilson) ProtoMessage() {}
func (*Wilson) Descriptor() ([]byte, []int) { return fileDescriptorCastvalue, []int{1} }
func init() {
proto.RegisterType((*Castaway)(nil), "castvalue.Castaway")
proto.RegisterType((*Wilson)(nil), "castvalue.Wilson")
}
func (this *Castaway) Description() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
return CastvalueDescription()
}
func (this *Wilson) Description() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
return CastvalueDescription()
}
func CastvalueDescription() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
d := &github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet{}
var gzipped = []byte{
// 3470 bytes of a gzipped FileDescriptorSet
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xcc, 0x5a, 0x6b, 0x6c, 0x23, 0x57,
0xf5, 0x5f, 0xc7, 0x76, 0x62, 0x1f, 0x3b, 0x8e, 0x33, 0x49, 0x77, 0xbd, 0xd9, 0x76, 0xb3, 0xeb,
0x3e, 0x76, 0xbb, 0x6d, 0x93, 0xfe, 0xf7, 0xdf, 0xc7, 0xd6, 0xfd, 0xff, 0x5b, 0xe5, 0xe1, 0x4d,
0xbd, 0xca, 0x8b, 0x49, 0xd2, 0xee, 0x96, 0x0f, 0xa3, 0xc9, 0xf8, 0xc6, 0xf1, 0xee, 0x78, 0xc6,
0x78, 0xc6, 0xbb, 0x9b, 0x7e, 0x2a, 0x6a, 0x01, 0x15, 0x44, 0x79, 0x4a, 0xf4, 0x0d, 0xad, 0x04,
0x2d, 0xe5, 0xd5, 0xf2, 0x12, 0xe2, 0x53, 0x11, 0x2a, 0xf4, 0x13, 0x2a, 0x7c, 0xe2, 0x03, 0x02,
0x5a, 0x2a, 0x51, 0xa0, 0x40, 0x91, 0x56, 0xa2, 0x52, 0xbf, 0x70, 0xee, 0x6b, 0x3c, 0x63, 0x3b,
0x19, 0xa7, 0xa8, 0x94, 0x48, 0xa3, 0xcc, 0x9c, 0x7b, 0x7e, 0xbf, 0xb9, 0xf7, 0xdc, 0x73, 0xcf,
0x39, 0xf7, 0x8e, 0xe1, 0xa7, 0xff, 0x03, 0x87, 0x2a, 0xb6, 0x5d, 0x31, 0xc9, 0x64, 0xbd, 0x61,
0xbb, 0xf6, 0x7a, 0x73, 0x63, 0xb2, 0x4c, 0x1c, 0xa3, 0x51, 0xad, 0xbb, 0x76, 0x63, 0x82, 0xc9,
0x94, 0x21, 0xae, 0x31, 0x21, 0x35, 0xf2, 0x0b, 0x30, 0x7c, 0xb2, 0x6a, 0x92, 0x59, 0x4f, 0x71,
0x85, 0xb8, 0xca, 0x09, 0x88, 0x6d, 0xa0, 0x30, 0x17, 0x39, 0x14, 0x3d, 0x9a, 0x3a, 0x7e, 0xd5,
0x44, 0x1b, 0x68, 0x22, 0x88, 0x58, 0xa6, 0x62, 0x95, 0x21, 0xf2, 0x6f, 0xc4, 0x60, 0xa4, 0x4b,
0xab, 0xa2, 0x40, 0xcc, 0xd2, 0x6b, 0x94, 0x31, 0x72, 0x34, 0xa9, 0xb2, 0x7b, 0x25, 0x07, 0x03,
0x75, 0xdd, 0x38, 0xa7, 0x57, 0x48, 0xae, 0x8f, 0x89, 0xe5, 0xa3, 0x72, 0x10, 0xa0, 0x4c, 0xea,
0xc4, 0x2a, 0x13, 0xcb, 0xd8, 0xca, 0x45, 0xb1, 0x17, 0x49, 0xd5, 0x27, 0x51, 0xae, 0x83, 0xe1,
0x7a, 0x73, 0xdd, 0xac, 0x1a, 0x9a, 0x4f, 0x0d, 0x50, 0x2d, 0xae, 0x66, 0x79, 0xc3, 0x6c, 0x4b,
0xf9, 0x08, 0x0c, 0x5d, 0x20, 0xfa, 0x39, 0xbf, 0x6a, 0x8a, 0xa9, 0x66, 0xa8, 0xd8, 0xa7, 0x38,
0x03, 0xe9, 0x1a, 0x71, 0x1c, 0xec, 0x80, 0xe6, 0x6e, 0xd5, 0x49, 0x2e, 0xc6, 0x46, 0x7f, 0xa8,
0x63, 0xf4, 0xed, 0x23, 0x4f, 0x09, 0xd4, 0x2a, 0x82, 0x94, 0x29, 0x48, 0x12, 0xab, 0x59, 0xe3,
0x0c, 0xf1, 0x6d, 0xec, 0x57, 0x44, 0x8d, 0x76, 0x96, 0x04, 0x85, 0x09, 0x8a, 0x01, 0x87, 0x34,
0xce, 0x57, 0x0d, 0x92, 0xeb, 0x67, 0x04, 0x47, 0x3a, 0x08, 0x56, 0x78, 0x7b, 0x3b, 0x87, 0xc4,
0xe1, 0x50, 0x92, 0xe4, 0xa2, 0x4b, 0x2c, 0xa7, 0x6a, 0x5b, 0xb9, 0x01, 0x46, 0x72, 0x75, 0x97,
0x59, 0x24, 0x66, 0xb9, 0x9d, 0xa2, 0x85, 0x53, 0x6e, 0x81, 0x01, 0xbb, 0xee, 0xe2, 0x9d, 0x93,
0x4b, 0xe0, 0xfc, 0xa4, 0x8e, 0x5f, 0xde, 0xd5, 0x11, 0x96, 0xb8, 0x8e, 0x2a, 0x95, 0x95, 0x12,
0x64, 0x1d, 0xbb, 0xd9, 0x30, 0x88, 0x66, 0xd8, 0x65, 0xa2, 0x55, 0xad, 0x0d, 0x3b, 0x97, 0x64,
0x04, 0xe3, 0x9d, 0x03, 0x61, 0x8a, 0x33, 0xa8, 0x57, 0x42, 0x35, 0x35, 0xe3, 0x04, 0x9e, 0x95,
0xbd, 0xd0, 0xef, 0x6c, 0x59, 0xae, 0x7e, 0x31, 0x97, 0x66, 0x1e, 0x22, 0x9e, 0xf2, 0xff, 0x8c,
0xc3, 0x50, 0x2f, 0x2e, 0x76, 0x3b, 0xc4, 0x37, 0xe8, 0x28, 0xd1, 0xc1, 0x76, 0x61, 0x03, 0x8e,
0x09, 0x1a, 0xb1, 0xff, 0x3d, 0x1a, 0x71, 0x0a, 0x52, 0x16, 0x71, 0x5c, 0x52, 0xe6, 0x1e, 0x11,
0xed, 0xd1, 0xa7, 0x80, 0x83, 0x3a, 0x5d, 0x2a, 0xf6, 0x9e, 0x5c, 0xea, 0x34, 0x0c, 0x79, 0x5d,
0xd2, 0x1a, 0xba, 0x55, 0x91, 0xbe, 0x39, 0x19, 0xd6, 0x93, 0x89, 0xa2, 0xc4, 0xa9, 0x14, 0xa6,
0x66, 0x48, 0xe0, 0x59, 0x99, 0x05, 0xb0, 0x2d, 0x62, 0x6f, 0xe0, 0xf2, 0x32, 0x4c, 0xf4, 0x93,
0xee, 0x56, 0x5a, 0xa2, 0x2a, 0x1d, 0x56, 0xb2, 0xb9, 0xd4, 0x30, 0x95, 0xdb, 0x5a, 0xae, 0x36,
0xb0, 0x8d, 0xa7, 0x2c, 0xf0, 0x45, 0xd6, 0xe1, 0x6d, 0x6b, 0x90, 0x69, 0x10, 0xea, 0xf7, 0x68,
0x62, 0x3e, 0xb2, 0x24, 0xeb, 0xc4, 0x44, 0xe8, 0xc8, 0x54, 0x01, 0xe3, 0x03, 0x1b, 0x6c, 0xf8,
0x1f, 0x95, 0x2b, 0xc1, 0x13, 0x68, 0xcc, 0xad, 0x80, 0x45, 0xa1, 0xb4, 0x14, 0x2e, 0xa2, 0x6c,
0xec, 0x04, 0x64, 0x82, 0xe6, 0x51, 0x46, 0x21, 0xee, 0xb8, 0x7a, 0xc3, 0x65, 0x5e, 0x18, 0x57,
0xf9, 0x83, 0x92, 0x85, 0x28, 0x06, 0x19, 0x16, 0xe5, 0xe2, 0x2a, 0xbd, 0x1d, 0xbb, 0x15, 0x06,
0x03, 0xaf, 0xef, 0x15, 0x98, 0x7f, 0xa4, 0x1f, 0x46, 0xbb, 0xf9, 0x5c, 0x57, 0xf7, 0xc7, 0xe5,
0x83, 0x1e, 0xb0, 0x4e, 0x1a, 0xe8, 0x77, 0x94, 0x41, 0x3c, 0xa1, 0x47, 0xc5, 0x4d, 0x7d, 0x9d,
0x98, 0xe8, 0x4d, 0x91, 0xa3, 0x99, 0xe3, 0xd7, 0xf5, 0xe4, 0xd5, 0x13, 0xf3, 0x14, 0xa2, 0x72,
0xa4, 0x72, 0x07, 0xc4, 0x44, 0x88, 0xa3, 0x0c, 0xc7, 0x7a, 0x63, 0xa0, 0xbe, 0xa8, 0x32, 0x9c,
0x72, 0x00, 0x92, 0xf4, 0x3f, 0xb7, 0x6d, 0x3f, 0xeb, 0x73, 0x82, 0x0a, 0xa8, 0x5d, 0x95, 0x31,
0x48, 0x30, 0x37, 0x2b, 0x13, 0x99, 0x1a, 0xbc, 0x67, 0x3a, 0x31, 0x65, 0xb2, 0xa1, 0x37, 0x4d,
0x57, 0x3b, 0xaf, 0x9b, 0x4d, 0xc2, 0x1c, 0x06, 0x27, 0x46, 0x08, 0xef, 0xa6, 0x32, 0x65, 0x1c,
0x52, 0xdc, 0x2b, 0xab, 0x88, 0xb9, 0xc8, 0xa2, 0x4f, 0x5c, 0xe5, 0x8e, 0x5a, 0xa2, 0x12, 0xfa,
0xfa, 0xb3, 0x0e, 0xae, 0x05, 0x31, 0xb5, 0xec, 0x15, 0x54, 0xc0, 0x5e, 0x7f, 0x6b, 0x7b, 0xe0,
0xbb, 0xa2, 0xfb, 0xf0, 0xda, 0x7d, 0x31, 0xff, 0xc3, 0x3e, 0x88, 0xb1, 0xf5, 0x36, 0x04, 0xa9,
0xd5, 0x33, 0xcb, 0x45, 0x6d, 0x76, 0x69, 0x6d, 0x7a, 0xbe, 0x98, 0x8d, 0x28, 0x19, 0x00, 0x26,
0x38, 0x39, 0xbf, 0x34, 0xb5, 0x9a, 0xed, 0xf3, 0x9e, 0x4b, 0x8b, 0xab, 0xb7, 0xdc, 0x94, 0x8d,
0x7a, 0x80, 0x35, 0x2e, 0x88, 0xf9, 0x15, 0xfe, 0xf7, 0x78, 0x36, 0x8e, 0x9e, 0x90, 0xe6, 0x04,
0xa5, 0xd3, 0xc5, 0x59, 0xd4, 0xe8, 0x0f, 0x4a, 0x50, 0x67, 0x40, 0x19, 0x84, 0x24, 0x93, 0x4c,
0x2f, 0x2d, 0xcd, 0x67, 0x13, 0x1e, 0xe7, 0xca, 0xaa, 0x5a, 0x5a, 0x9c, 0xcb, 0x26, 0x3d, 0xce,
0x39, 0x75, 0x69, 0x6d, 0x39, 0x0b, 0x1e, 0xc3, 0x42, 0x71, 0x65, 0x65, 0x6a, 0xae, 0x98, 0x4d,
0x79, 0x1a, 0xd3, 0x67, 0x56, 0x8b, 0x2b, 0xd9, 0x74, 0xa0, 0x5b, 0xf8, 0x8a, 0x41, 0xef, 0x15,
0xc5, 0xc5, 0xb5, 0x85, 0x6c, 0x46, 0x19, 0x86, 0x41, 0xfe, 0x0a, 0xd9, 0x89, 0xa1, 0x36, 0x11,
0xf6, 0x34, 0xdb, 0xea, 0x08, 0x67, 0x19, 0x0e, 0x08, 0x50, 0x43, 0xc9, 0xcf, 0x40, 0x9c, 0x79,
0x17, 0x7a, 0x71, 0x66, 0x7e, 0x6a, 0xba, 0x38, 0xaf, 0x2d, 0x2d, 0xaf, 0x96, 0x96, 0x16, 0xa7,
0xe6, 0xd1, 0x76, 0x9e, 0x4c, 0x2d, 0x7e, 0x68, 0xad, 0xa4, 0x16, 0x67, 0xd1, 0x7e, 0x3e, 0xd9,
0x72, 0x71, 0x6a, 0x15, 0x65, 0xd1, 0xfc, 0x31, 0x18, 0xed, 0x16, 0x67, 0xba, 0xad, 0x8c, 0xfc,
0x33, 0x11, 0x18, 0xe9, 0x12, 0x32, 0xbb, 0xae, 0xa2, 0x3b, 0x21, 0xce, 0x3d, 0x8d, 0x27, 0x91,
0x6b, 0xbb, 0xc6, 0x5e, 0xe6, 0x77, 0x1d, 0x89, 0x84, 0xe1, 0xfc, 0x89, 0x34, 0xba, 0x4d, 0x22,
0xa5, 0x14, 0x1d, 0xee, 0xf4, 0x40, 0x04, 0x72, 0xdb, 0x71, 0x87, 0xac, 0xf7, 0xbe, 0xc0, 0x7a,
0xbf, 0xbd, 0xbd, 0x03, 0x87, 0xb7, 0x1f, 0x43, 0x47, 0x2f, 0x9e, 0x8d, 0xc0, 0xde, 0xee, 0xf5,
0x46, 0xd7, 0x3e, 0xdc, 0x01, 0xfd, 0x35, 0xe2, 0x6e, 0xda, 0x32, 0xe7, 0x5e, 0xd3, 0x25, 0x92,
0xd3, 0xe6, 0x76, 0x5b, 0x09, 0x94, 0x3f, 0x15, 0x44, 0xb7, 0x2b, 0x1a, 0x78, 0x6f, 0x3a, 0x7a,
0xfa, 0x50, 0x1f, 0x5c, 0xd6, 0x95, 0xbc, 0x6b, 0x47, 0xaf, 0x00, 0xa8, 0x5a, 0xf5, 0xa6, 0xcb,
0xf3, 0x2a, 0x0f, 0x33, 0x49, 0x26, 0x61, 0x4b, 0x98, 0x86, 0x90, 0xa6, 0xeb, 0xb5, 0x47, 0x59,
0x3b, 0x70, 0x11, 0x53, 0x38, 0xd1, 0xea, 0x68, 0x8c, 0x75, 0xf4, 0xe0, 0x36, 0x23, 0xed, 0x48,
0x59, 0x37, 0x42, 0xd6, 0x30, 0xab, 0xc4, 0x72, 0x35, 0xc7, 0x6d, 0x10, 0xbd, 0x56, 0xb5, 0x2a,
0x2c, 0x8e, 0x26, 0x0a, 0xf1, 0x0d, 0xdd, 0x74, 0x88, 0x3a, 0xc4, 0x9b, 0x57, 0x64, 0x2b, 0x45,
0xb0, 0x64, 0xd1, 0xf0, 0x21, 0xfa, 0x03, 0x08, 0xde, 0xec, 0x21, 0xf2, 0xbf, 0x1a, 0x80, 0x94,
0xaf, 0x3a, 0x53, 0x0e, 0x43, 0xfa, 0xac, 0x7e, 0x5e, 0xd7, 0x64, 0xc5, 0xcd, 0x2d, 0x91, 0xa2,
0xb2, 0x65, 0x51, 0x75, 0xdf, 0x08, 0xa3, 0x4c, 0x05, 0xc7, 0x88, 0x2f, 0x32, 0x4c, 0xdd, 0x71,
0x98, 0xd1, 0x12, 0x4c, 0x55, 0xa1, 0x6d, 0x4b, 0xb4, 0x69, 0x46, 0xb6, 0x28, 0x37, 0xc3, 0x08,
0x43, 0xd4, 0x30, 0xf0, 0x56, 0xeb, 0x26, 0xd1, 0xe8, 0x1e, 0xc0, 0x61, 0xf1, 0xd4, 0xeb, 0xd9,
0x30, 0xd5, 0x58, 0x10, 0x0a, 0xb4, 0x47, 0x8e, 0x32, 0x07, 0x57, 0x30, 0x58, 0x85, 0x58, 0xa4,
0xa1, 0xbb, 0x44, 0x23, 0x1f, 0x69, 0xa2, 0xae, 0xa6, 0x5b, 0x65, 0x6d, 0x53, 0x77, 0x36, 0x73,
0xa3, 0x7e, 0x82, 0xfd, 0x54, 0x77, 0x4e, 0xa8, 0x16, 0x99, 0xe6, 0x94, 0x55, 0xbe, 0x0b, 0xf5,
0x94, 0x02, 0xec, 0x65, 0x44, 0x68, 0x14, 0x1c, 0xb3, 0x66, 0x6c, 0x12, 0xe3, 0x9c, 0xd6, 0x74,
0x37, 0x4e, 0xe4, 0x0e, 0xf8, 0x19, 0x58, 0x27, 0x57, 0x98, 0xce, 0x0c, 0x55, 0x59, 0x43, 0x0d,
0x65, 0x05, 0xd2, 0x74, 0x3e, 0x6a, 0xd5, 0xfb, 0xb0, 0xdb, 0x76, 0x83, 0xe5, 0x88, 0x4c, 0x97,
0xc5, 0xed, 0x33, 0xe2, 0xc4, 0x92, 0x00, 0x2c, 0x60, 0x7d, 0x5a, 0x88, 0xaf, 0x2c, 0x17, 0x8b,
0xb3, 0x6a, 0x4a, 0xb2, 0x9c, 0xb4, 0x1b, 0xd4, 0xa7, 0x2a, 0xb6, 0x67, 0xe3, 0x14, 0xf7, 0xa9,
0x8a, 0x2d, 0x2d, 0x8c, 0xf6, 0x32, 0x0c, 0x3e, 0x6c, 0xdc, 0xbb, 0x88, 0x62, 0xdd, 0xc9, 0x65,
0x03, 0xf6, 0x32, 0x8c, 0x39, 0xae, 0x20, 0xdc, 0xdc, 0xc1, 0x25, 0x71, 0x59, 0xcb, 0x5e, 0x7e,
0xe0, 0x70, 0xc7, 0x28, 0xdb, 0xa1, 0xf8, 0xc6, 0xfa, 0x56, 0x27, 0x50, 0x09, 0xbc, 0xb1, 0xbe,
0xd5, 0x0e, 0xbb, 0x9a, 0x6d, 0xc0, 0x1a, 0xc4, 0x40, 0x93, 0x97, 0x73, 0xfb, 0xfc, 0xda, 0xbe,
0x06, 0x65, 0x12, 0x1d, 0xd9, 0xd0, 0x88, 0xa5, 0xaf, 0xe3, 0xdc, 0xeb, 0x0d, 0xbc, 0x71, 0x72,
0xe3, 0x7e, 0xe5, 0x8c, 0x61, 0x14, 0x59, 0xeb, 0x14, 0x6b, 0x54, 0x8e, 0xc1, 0xb0, 0xbd, 0x7e,
0xd6, 0xe0, 0xce, 0xa5, 0x21, 0xcf, 0x46, 0xf5, 0x62, 0xee, 0x2a, 0x66, 0xa6, 0x21, 0xda, 0xc0,
0x5c, 0x6b, 0x99, 0x89, 0x95, 0x6b, 0x91, 0xdc, 0xd9, 0xd4, 0x1b, 0x75, 0x96, 0xa4, 0x1d, 0x34,
0x2a, 0xc9, 0x5d, 0xcd, 0x55, 0xb9, 0x7c, 0x51, 0x8a, 0x95, 0x22, 0x8c, 0xd3, 0xc1, 0x5b, 0xba,
0x65, 0x6b, 0x4d, 0x87, 0x68, 0xad, 0x2e, 0x7a, 0x73, 0x71, 0x0d, 0xed, 0x96, 0x7a, 0xb9, 0x54,
0x5b, 0x73, 0x30, 0x98, 0x49, 0x25, 0x39, 0x3d, 0xa7, 0x61, 0xb4, 0x69, 0x55, 0x2d, 0x74, 0x71,
0x6c, 0xa1, 0x60, 0xbe, 0x60, 0x73, 0x7f, 0x1c, 0xd8, 0xa6, 0xe8, 0x5e, 0xf3, 0x6b, 0x73, 0x27,
0x51, 0x47, 0x9a, 0x9d, 0xc2, 0x7c, 0x01, 0xd2, 0x7e, 0xdf, 0x51, 0x92, 0xc0, 0xbd, 0x07, 0xb3,
0x1b, 0x66, 0xd4, 0x99, 0xa5, 0x59, 0x9a, 0x0b, 0xef, 0x2d, 0x62, 0x62, 0xc3, 0x9c, 0x3c, 0x5f,
0x5a, 0x2d, 0x6a, 0xea, 0xda, 0xe2, 0x6a, 0x69, 0xa1, 0x98, 0x8d, 0x1e, 0x4b, 0x26, 0xde, 0x1c,
0xc8, 0xde, 0x8f, 0x7f, 0x7d, 0xf9, 0x97, 0xfb, 0x20, 0x13, 0xac, 0x83, 0x95, 0xff, 0x83, 0x7d,
0x72, 0xd3, 0xea, 0x10, 0x57, 0xbb, 0x50, 0x6d, 0x30, 0x77, 0xae, 0xe9, 0xbc, 0x92, 0xf4, 0x66,
0x62, 0x54, 0x68, 0xe1, 0xf6, 0xfe, 0x1e, 0xd4, 0x39, 0xc9, 0x54, 0x94, 0x79, 0x18, 0x47, 0x93,
0x61, 0xad, 0x69, 0x95, 0xf5, 0x46, 0x59, 0x6b, 0x1d, 0x17, 0x68, 0xba, 0x81, 0x7e, 0xe0, 0xd8,
0x3c, 0x93, 0x78, 0x2c, 0x97, 0x5b, 0xf6, 0x8a, 0x50, 0x6e, 0x85, 0xd8, 0x29, 0xa1, 0xda, 0xe6,
0x35, 0xd1, 0xed, 0xbc, 0x06, 0x6b, 0xaf, 0x9a, 0x5e, 0x47, 0xb7, 0x71, 0x1b, 0x5b, 0xac, 0x7a,
0x4b, 0xa8, 0x09, 0x14, 0x14, 0xe9, 0xf3, 0xfb, 0x37, 0x07, 0x7e, 0x3b, 0xfe, 0x26, 0x0a, 0x69,
0x7f, 0x05, 0x47, 0x0b, 0x62, 0x83, 0x85, 0xf9, 0x08, 0x8b, 0x02, 0x57, 0xee, 0x58, 0xef, 0x4d,
0xcc, 0xd0, 0xf8, 0x5f, 0xe8, 0xe7, 0x75, 0x95, 0xca, 0x91, 0x34, 0xf7, 0x52, 0x5f, 0x23, 0xbc,
0x5a, 0x4f, 0xa8, 0xe2, 0x09, 0x83, 0x5d, 0xff, 0x59, 0x87, 0x71, 0xf7, 0x33, 0xee, 0xab, 0x76,
0xe6, 0x3e, 0xb5, 0xc2, 0xc8, 0x93, 0xa7, 0x56, 0xb4, 0xc5, 0x25, 0x75, 0x61, 0x6a, 0x5e, 0x15,
0x70, 0x65, 0x3f, 0xc4, 0x4c, 0xfd, 0xbe, 0xad, 0x60, 0xa6, 0x60, 0xa2, 0x5e, 0x0d, 0x8f, 0x0c,
0xf4, 0xc8, 0x23, 0x18, 0x9f, 0x99, 0xe8, 0x7d, 0x74, 0xfd, 0x49, 0x88, 0x33, 0x7b, 0x29, 0x00,
0xc2, 0x62, 0xd9, 0x3d, 0x4a, 0x02, 0x62, 0x33, 0x4b, 0x2a, 0x75, 0x7f, 0xf4, 0x77, 0x2e, 0xd5,
0x96, 0x4b, 0xc5, 0x19, 0x5c, 0x01, 0xf9, 0x9b, 0xa1, 0x9f, 0x1b, 0x81, 0x2e, 0x0d, 0xcf, 0x0c,
0x08, 0xe2, 0x8f, 0x82, 0x23, 0x22, 0x5b, 0xd7, 0x16, 0xa6, 0x8b, 0x6a, 0xb6, 0xcf, 0x3f, 0xbd,
0x3f, 0x8e, 0x40, 0xca, 0x57, 0x50, 0xd1, 0x54, 0xae, 0x9b, 0xa6, 0x7d, 0x41, 0xd3, 0xcd, 0x2a,
0x46, 0x28, 0x3e, 0x3f, 0xc0, 0x44, 0x53, 0x54, 0xd2, 0xab, 0xfd, 0xfe, 0x23, 0xbe, 0xf9, 0x54,
0x04, 0xb2, 0xed, 0xc5, 0x58, 0x5b, 0x07, 0x23, 0x1f, 0x68, 0x07, 0x9f, 0x88, 0x40, 0x26, 0x58,
0x81, 0xb5, 0x75, 0xef, 0xf0, 0x07, 0xda, 0xbd, 0xc7, 0x23, 0x30, 0x18, 0xa8, 0xbb, 0xfe, 0xab,
0x7a, 0xf7, 0x58, 0x14, 0x46, 0xba, 0xe0, 0x30, 0x00, 0xf1, 0x02, 0x95, 0xd7, 0xcc, 0x37, 0xf4,
0xf2, 0xae, 0x09, 0x9a, 0xff, 0x96, 0xf5, 0x86, 0x2b, 0xea, 0x59, 0xcc, 0x97, 0xd5, 0x32, 0x06,
0xd5, 0xea, 0x46, 0x15, 0xcb, 0x37, 0xbe, 0x63, 0xe1, 0x55, 0xeb, 0x50, 0x4b, 0xce, 0xb7, 0xc7,
0xd7, 0x83, 0x52, 0xb7, 0x9d, 0xaa, 0x5b, 0x3d, 0x4f, 0x8f, 0xe7, 0xe4, 0x46, 0x9a, 0x56, 0xb1,
0x31, 0x35, 0x2b, 0x5b, 0x4a, 0x96, 0xeb, 0x69, 0x5b, 0xa4, 0xa2, 0xb7, 0x69, 0xd3, 0x30, 0x14,
0x55, 0xb3, 0xb2, 0xc5, 0xd3, 0xc6, 0x42, 0xb3, 0x6c, 0x37, 0x69, 0x41, 0xc0, 0xf5, 0x68, 0xd4,
0x8b, 0xa8, 0x29, 0x2e, 0xf3, 0x54, 0x44, 0xc5, 0xd6, 0xda, 0xc1, 0xa7, 0xd5, 0x14, 0x97, 0x71,
0x95, 0x23, 0x30, 0xa4, 0x57, 0x2a, 0x0d, 0x4a, 0x2e, 0x89, 0x78, 0x19, 0x9a, 0xf1, 0xc4, 0x4c,
0x71, 0xec, 0x14, 0x24, 0xa4, 0x1d, 0x68, 0x62, 0xa1, 0x96, 0xc0, 0x9c, 0xcf, 0xce, 0x51, 0xfa,
0xe8, 0xa6, 0xde, 0x92, 0x8d, 0xf8, 0xd2, 0xaa, 0xa3, 0xb5, 0x0e, 0xf4, 0xfa, 0xb0, 0x3d, 0xa1,
0xa6, 0xaa, 0x8e, 0x77, 0x82, 0x93, 0x7f, 0x16, 0xd3, 0x6b, 0xf0, 0x40, 0x52, 0x99, 0x85, 0x84,
0x69, 0xa3, 0x7f, 0x50, 0x04, 0x3f, 0x0d, 0x3f, 0x1a, 0x72, 0x86, 0x39, 0x31, 0x2f, 0xf4, 0x55,
0x0f, 0x39, 0xf6, 0x8b, 0x08, 0x24, 0xa4, 0x18, 0x13, 0x45, 0xac, 0xae, 0xbb, 0x9b, 0x8c, 0x2e,
0x3e, 0xdd, 0x97, 0x8d, 0xa8, 0xec, 0x99, 0xca, 0xb1, 0x9a, 0xb1, 0x98, 0x0b, 0x08, 0x39, 0x7d,
0xa6, 0xf3, 0x6a, 0x12, 0xbd, 0xcc, 0x0a, 0x5c, 0xbb, 0x56, 0xc3, 0x99, 0x74, 0xe4, 0xbc, 0x0a,
0xf9, 0x8c, 0x10, 0xd3, 0x73, 0x71, 0xb7, 0xa1, 0x57, 0xcd, 0x80, 0x6e, 0x8c, 0xe9, 0x66, 0x65,
0x83, 0xa7, 0x5c, 0x80, 0xfd, 0x92, 0xb7, 0x4c, 0x5c, 0x1d, 0x8b, 0xe7, 0x72, 0x0b, 0xd4, 0xcf,
0x4e, 0xbb, 0xf6, 0x09, 0x85, 0x59, 0xd1, 0x2e, 0xb1, 0xd3, 0xa7, 0xb1, 0x90, 0xb5, 0x6b, 0xed,
0x96, 0x98, 0xce, 0xb6, 0xed, 0xbb, 0x9c, 0xbb, 0x22, 0xf7, 0x42, 0xab, 0xa8, 0x78, 0xa6, 0x2f,
0x3a, 0xb7, 0x3c, 0xfd, 0x7c, 0xdf, 0xd8, 0x1c, 0xc7, 0x2d, 0x4b, 0x0b, 0xaa, 0x64, 0xc3, 0x24,
0x06, 0xb5, 0x0e, 0x3c, 0x7d, 0x25, 0xdc, 0x50, 0xa9, 0xba, 0x9b, 0xcd, 0xf5, 0x09, 0x7c, 0xc3,
0x64, 0xc5, 0xae, 0xd8, 0xad, 0xcf, 0x19, 0xf4, 0x89, 0x3d, 0xb0, 0x3b, 0xf1, 0x49, 0x23, 0xe9,
0x49, 0xc7, 0x42, 0xbf, 0x7f, 0x14, 0x16, 0x61, 0x44, 0x28, 0x6b, 0xec, 0x4c, 0x95, 0x97, 0xa0,
0xca, 0x8e, 0x1b, 0xf2, 0xdc, 0x8b, 0x6f, 0xb0, 0x94, 0xa0, 0x0e, 0x0b, 0x28, 0x6d, 0xe3, 0x45,
0x6a, 0x41, 0x85, 0xcb, 0x02, 0x7c, 0xdc, 0x87, 0x71, 0xcb, 0xbd, 0x33, 0xe3, 0xcb, 0x82, 0x71,
0xc4, 0xc7, 0xb8, 0x22, 0xa0, 0x85, 0x19, 0x18, 0xdc, 0x0d, 0xd7, 0xcf, 0x04, 0x57, 0x9a, 0xf8,
0x49, 0xe6, 0x60, 0x88, 0x91, 0x18, 0x4d, 0xc7, 0xb5, 0x6b, 0x2c, 0x40, 0xec, 0x4c, 0xf3, 0xf3,
0x37, 0xb8, 0x53, 0x65, 0x28, 0x6c, 0xc6, 0x43, 0x15, 0xee, 0x86, 0x51, 0x2a, 0x61, 0x6b, 0xd0,
0xcf, 0x16, 0x7e, 0x84, 0x90, 0xfb, 0xe5, 0x03, 0xdc, 0xf7, 0x46, 0x3c, 0x02, 0x1f, 0xaf, 0x6f,
0x26, 0x2a, 0xc4, 0xc5, 0xd8, 0x86, 0xfb, 0x3f, 0xd3, 0x54, 0x76, 0xfc, 0xc6, 0x90, 0x7b, 0xf4,
0xad, 0xe0, 0x4c, 0xcc, 0x71, 0xe4, 0x94, 0x69, 0x16, 0xd6, 0x60, 0x5f, 0x97, 0x99, 0xed, 0x81,
0xf3, 0x31, 0xc1, 0x39, 0xda, 0x31, 0xbb, 0x94, 0x76, 0x19, 0xa4, 0xdc, 0x9b, 0x8f, 0x1e, 0x38,
0x1f, 0x17, 0x9c, 0x8a, 0xc0, 0xca, 0x69, 0xa1, 0x8c, 0xa7, 0x60, 0x18, 0x77, 0xea, 0xeb, 0xb6,
0x23, 0xf6, 0xbd, 0x3d, 0xd0, 0x3d, 0x21, 0xe8, 0x86, 0x04, 0x90, 0xed, 0x82, 0x29, 0xd7, 0x6d,
0x90, 0xd8, 0xc0, 0x0d, 0x50, 0x0f, 0x14, 0x4f, 0x0a, 0x8a, 0x01, 0xaa, 0x4f, 0xa1, 0x53, 0x90,
0xae, 0xd8, 0x22, 0x0c, 0x87, 0xc3, 0x9f, 0x12, 0xf0, 0x94, 0xc4, 0x08, 0x8a, 0xba, 0x5d, 0x6f,
0x9a, 0x34, 0x46, 0x87, 0x53, 0x7c, 0x59, 0x52, 0x48, 0x8c, 0xa0, 0xd8, 0x85, 0x59, 0xbf, 0x22,
0x29, 0x1c, 0x9f, 0x3d, 0xef, 0xa4, 0x67, 0xbd, 0xe6, 0x96, 0x6d, 0xf5, 0xd2, 0x89, 0xa7, 0x05,
0x03, 0x08, 0x08, 0x25, 0xb8, 0x1d, 0x92, 0xbd, 0x4e, 0xc4, 0x57, 0x05, 0x3c, 0x41, 0xe4, 0x0c,
0xe0, 0x3a, 0x93, 0x41, 0x86, 0x7e, 0x5b, 0x09, 0xa7, 0xf8, 0x9a, 0xa0, 0xc8, 0xf8, 0x60, 0x62,
0x18, 0x2e, 0x71, 0x5c, 0xdc, 0xaa, 0xf7, 0x40, 0xf2, 0xac, 0x1c, 0x86, 0x80, 0x08, 0x53, 0xae,
0x13, 0xcb, 0xd8, 0xec, 0x8d, 0xe1, 0x39, 0x69, 0x4a, 0x89, 0xa1, 0x14, 0x18, 0x79, 0x6a, 0x7a,
0x03, 0x37, 0xd7, 0x66, 0x4f, 0xd3, 0xf1, 0x75, 0xc1, 0x91, 0xf6, 0x40, 0xc2, 0x22, 0x4d, 0x6b,
0x37, 0x34, 0xcf, 0x4b, 0x8b, 0xf8, 0x60, 0x62, 0xe9, 0xe1, 0xce, 0x94, 0x56, 0x12, 0xbb, 0x61,
0xfb, 0x86, 0x5c, 0x7a, 0x1c, 0xbb, 0xe0, 0x67, 0xc4, 0x99, 0x76, 0x70, 0x0b, 0xde, 0x0b, 0xcd,
0x37, 0xe5, 0x4c, 0x33, 0x00, 0x05, 0x9f, 0x81, 0xfd, 0x5d, 0x43, 0x7d, 0x0f, 0x64, 0xdf, 0x12,
0x64, 0x7b, 0xbb, 0x84, 0x7b, 0x11, 0x12, 0x76, 0x4b, 0xf9, 0x6d, 0x19, 0x12, 0x48, 0x1b, 0xd7,
0x32, 0x2d, 0x63, 0x1d, 0x7d, 0x63, 0x77, 0x56, 0xfb, 0x8e, 0xb4, 0x1a, 0xc7, 0x06, 0xac, 0xb6,
0x0a, 0x7b, 0x05, 0xe3, 0xee, 0xe6, 0xf5, 0x05, 0x19, 0x58, 0x39, 0x7a, 0x2d, 0x38, 0xbb, 0x1f,
0x86, 0x31, 0xcf, 0x9c, 0xb2, 0x02, 0x73, 0x34, 0x7a, 0x30, 0x10, 0xce, 0xfc, 0xa2, 0x60, 0x96,
0x11, 0xdf, 0x2b, 0xe1, 0x9c, 0x05, 0xbd, 0x4e, 0xc9, 0x4f, 0x43, 0x4e, 0x92, 0x37, 0x2d, 0x2c,
0xf0, 0xed, 0x8a, 0x85, 0xd3, 0x58, 0xee, 0x81, 0xfa, 0xbb, 0x6d, 0x53, 0xb5, 0xe6, 0x83, 0x53,
0xe6, 0x12, 0x64, 0xbd, 0x7a, 0x43, 0xab, 0xd6, 0xea, 0x36, 0x96, 0x96, 0x3b, 0x33, 0x7e, 0x4f,
0xce, 0x94, 0x87, 0x2b, 0x31, 0x58, 0xa1, 0x08, 0x19, 0xf6, 0xd8, 0xab, 0x4b, 0x7e, 0x5f, 0x10,
0x0d, 0xb6, 0x50, 0x22, 0x70, 0x60, 0xa5, 0x84, 0x35, 0x6f, 0x2f, 0xf1, 0xef, 0x07, 0x32, 0x70,
0x08, 0x08, 0xf7, 0xbe, 0xa1, 0xb6, 0x4c, 0xac, 0x84, 0x7d, 0x7e, 0xcd, 0x7d, 0xf4, 0x92, 0x58,
0xb3, 0xc1, 0x44, 0x5c, 0x98, 0xa7, 0xe6, 0x09, 0xa6, 0xcb, 0x70, 0xb2, 0x07, 0x2e, 0x79, 0x16,
0x0a, 0x64, 0xcb, 0xc2, 0x49, 0x18, 0x0c, 0xa4, 0xca, 0x70, 0xaa, 0x07, 0x05, 0x55, 0xda, 0x9f,
0x29, 0x0b, 0x37, 0x43, 0x8c, 0xa6, 0xbd, 0x70, 0xf8, 0xc7, 0x04, 0x9c, 0xa9, 0x17, 0xfe, 0x1f,
0x12, 0x32, 0xdd, 0x85, 0x43, 0x3f, 0x2e, 0xa0, 0x1e, 0x84, 0xc2, 0x65, 0xaa, 0x0b, 0x87, 0x7f,
0x42, 0xc2, 0x25, 0x84, 0xc2, 0x7b, 0x37, 0xe1, 0x4b, 0x9f, 0x8a, 0x89, 0x70, 0x25, 0x6d, 0x47,
0xbf, 0xf9, 0xf0, 0x1c, 0x17, 0x8e, 0x7e, 0x48, 0xbc, 0x5c, 0x22, 0x0a, 0xb7, 0x42, 0xbc, 0x47,
0x83, 0x7f, 0x5a, 0x40, 0xb9, 0x3e, 0x66, 0x90, 0x94, 0x2f, 0xaf, 0x85, 0xc3, 0x1f, 0x16, 0x70,
0x3f, 0x8a, 0x76, 0x5d, 0xe4, 0xb5, 0x70, 0x82, 0xcf, 0xc8, 0xae, 0x0b, 0x04, 0x35, 0x9b, 0x4c,
0x69, 0xe1, 0xe8, 0xcf, 0x4a, 0xab, 0x4b, 0x08, 0xae, 0xa6, 0xa4, 0x17, 0xa6, 0xc2, 0xf1, 0x9f,
0x13, 0xf8, 0x16, 0x86, 0x5a, 0xc0, 0x17, 0x26, 0xc3, 0x29, 0x3e, 0x2f, 0x2d, 0xe0, 0x43, 0xd1,
0x65, 0xd4, 0x9e, 0xfa, 0xc2, 0x99, 0xbe, 0x20, 0x97, 0x51, 0x5b, 0xe6, 0xa3, 0xb3, 0xc9, 0xa2,
0x45, 0x38, 0xc5, 0x17, 0xe5, 0x6c, 0x32, 0x7d, 0xda, 0x8d, 0xf6, 0x5c, 0x12, 0xce, 0xf1, 0x25,
0xd9, 0x8d, 0xb6, 0x54, 0x82, 0x99, 0x49, 0xe9, 0xcc, 0x23, 0xe1, 0x7c, 0x8f, 0x08, 0xbe, 0xe1,
0x8e, 0x34, 0x52, 0xb8, 0x07, 0xf6, 0x76, 0xcf, 0x21, 0xe1, 0xac, 0x8f, 0x5e, 0x6a, 0xab, 0xfa,
0xfd, 0x29, 0x04, 0x53, 0xde, 0x68, 0xb7, 0xfc, 0x11, 0x4e, 0xfb, 0xd8, 0xa5, 0xe0, 0xc6, 0xce,
0x9f, 0x3e, 0xb0, 0x42, 0x83, 0x56, 0xe8, 0x0e, 0xe7, 0x7a, 0x42, 0x70, 0xf9, 0x40, 0x74, 0x69,
0x88, 0xc8, 0x1d, 0x8e, 0x7f, 0x52, 0x2e, 0x0d, 0x81, 0x40, 0x70, 0xc2, 0x6a, 0x9a, 0x26, 0x75,
0x0e, 0x65, 0xe7, 0x9f, 0x34, 0xe4, 0xfe, 0xf4, 0xae, 0x58, 0x18, 0x12, 0x80, 0x31, 0x34, 0x4e,
0x6a, 0xeb, 0x68, 0x83, 0x10, 0xe4, 0x9f, 0xdf, 0x95, 0x01, 0x81, 0x6a, 0xe3, 0x7a, 0x02, 0xbe,
0x69, 0x64, 0x67, 0xd8, 0x21, 0xd8, 0xbf, 0xbc, 0x2b, 0x3e, 0xb3, 0xb6, 0x20, 0x2d, 0x02, 0xfe,
0xd1, 0x76, 0x67, 0x82, 0xb7, 0x82, 0x04, 0x6c, 0xa3, 0x79, 0x1b, 0x0c, 0xd0, 0x5f, 0x76, 0xb8,
0x7a, 0x25, 0x0c, 0xfd, 0x57, 0x81, 0x96, 0xfa, 0xd4, 0x60, 0x35, 0xbb, 0x41, 0xf0, 0xd6, 0x09,
0xc3, 0xfe, 0x4d, 0x60, 0x3d, 0x00, 0x05, 0x1b, 0xba, 0xe3, 0xf6, 0x32, 0xee, 0xbf, 0x4b, 0xb0,
0x04, 0xd0, 0x4e, 0xd3, 0xfb, 0x73, 0x64, 0x2b, 0x0c, 0xfb, 0xb6, 0xec, 0xb4, 0xd0, 0xc7, 0x00,
0x98, 0xa4, 0xb7, 0xfc, 0xa7, 0x07, 0x21, 0xe0, 0x7f, 0x08, 0x70, 0x0b, 0x31, 0x7d, 0xb8, 0xfb,
0xd1, 0x0e, 0xcc, 0xd9, 0x73, 0x36, 0x3f, 0xd4, 0x81, 0x87, 0xe3, 0x70, 0x08, 0x75, 0x30, 0xbf,
0x4e, 0x7a, 0x6b, 0x71, 0xd2, 0x63, 0x90, 0xc7, 0x32, 0x9e, 0x60, 0x6c, 0x77, 0x07, 0x3a, 0xf9,
0x9f, 0x44, 0x21, 0x31, 0x83, 0x60, 0xfd, 0x82, 0xbe, 0xa5, 0xd4, 0x61, 0x84, 0xde, 0xe3, 0xa2,
0x64, 0x47, 0x0b, 0xc2, 0xc5, 0xc5, 0x59, 0xdc, 0xf5, 0x13, 0xad, 0xb7, 0x4a, 0xc4, 0x44, 0x17,
0x75, 0xf6, 0x69, 0x69, 0x3a, 0xfb, 0xca, 0x6f, 0xc7, 0xf7, 0x7c, 0xf2, 0x77, 0xe3, 0x89, 0x85,
0xad, 0x7b, 0xaa, 0xa6, 0x43, 0x4f, 0x6b, 0x8d, 0x4e, 0x5d, 0xe5, 0xc1, 0x08, 0x1c, 0xe8, 0xc2,
0xb1, 0x28, 0x16, 0x82, 0x38, 0xa2, 0xbd, 0xa9, 0xc7, 0x57, 0x4b, 0x18, 0xef, 0x42, 0x3a, 0xf0,
0xfa, 0x03, 0xc6, 0xf6, 0xfa, 0x63, 0x67, 0x20, 0xb7, 0xdd, 0x48, 0xe8, 0xcf, 0xc2, 0x70, 0xa6,
0xc5, 0x4f, 0xc5, 0xe8, 0xad, 0x72, 0xa4, 0xf5, 0x1b, 0x15, 0xfa, 0x53, 0x84, 0x61, 0x5f, 0xef,
0xc4, 0xcb, 0x78, 0x7b, 0xa1, 0xef, 0x44, 0x64, 0x4c, 0x87, 0x43, 0x61, 0x3d, 0xfd, 0x37, 0x5f,
0x91, 0x3f, 0x08, 0xfd, 0x5c, 0x48, 0x7f, 0xd8, 0x56, 0xb2, 0xdc, 0x5b, 0x6e, 0x62, 0x54, 0x51,
0x35, 0x5e, 0xa5, 0x0f, 0xd3, 0xf3, 0xaf, 0xbc, 0x76, 0x70, 0xcf, 0xab, 0x78, 0xfd, 0x1a, 0xaf,
0xdf, 0xbf, 0x76, 0x30, 0xf2, 0x26, 0x5e, 0x6f, 0xe3, 0xf5, 0x0e, 0x5e, 0xf7, 0xbf, 0x7e, 0x30,
0xf2, 0x1c, 0x5e, 0x2f, 0xe0, 0xf5, 0x23, 0xbc, 0x5e, 0xc2, 0xeb, 0x15, 0xbc, 0x5e, 0x7d, 0x1d,
0x75, 0xf1, 0xff, 0x9b, 0xf8, 0xff, 0x6d, 0xfc, 0xff, 0x0e, 0xfe, 0xbf, 0xff, 0x0f, 0x07, 0xf7,
0xfc, 0x2b, 0x00, 0x00, 0xff, 0xff, 0xda, 0x83, 0xc0, 0xc0, 0xfb, 0x2c, 0x00, 0x00,
}
r := bytes.NewReader(gzipped)
gzipr, err := compress_gzip.NewReader(r)
if err != nil {
panic(err)
}
ungzipped, err := io_ioutil.ReadAll(gzipr)
if err != nil {
panic(err)
}
if err := github_com_gogo_protobuf_proto.Unmarshal(ungzipped, d); err != nil {
panic(err)
}
return d
}
func (this *Castaway) VerboseEqual(that interface{}) error {
if that == nil {
if this == nil {
return nil
}
return fmt.Errorf("that == nil && this != nil")
}
that1, ok := that.(*Castaway)
if !ok {
that2, ok := that.(Castaway)
if ok {
that1 = &that2
} else {
return fmt.Errorf("that is not of type *Castaway")
}
}
if that1 == nil {
if this == nil {
return nil
}
return fmt.Errorf("that is type *Castaway but is nil && this != nil")
} else if this == nil {
return fmt.Errorf("that is type *Castaway but is not nil && this == nil")
}
if len(this.CastMapValueMessage) != len(that1.CastMapValueMessage) {
return fmt.Errorf("CastMapValueMessage this(%v) Not Equal that(%v)", len(this.CastMapValueMessage), len(that1.CastMapValueMessage))
}
for i := range this.CastMapValueMessage {
a := (Wilson)(this.CastMapValueMessage[i])
b := (Wilson)(that1.CastMapValueMessage[i])
if !(&a).Equal(&b) {
return fmt.Errorf("CastMapValueMessage this[%v](%v) Not Equal that[%v](%v)", i, this.CastMapValueMessage[i], i, that1.CastMapValueMessage[i])
}
}
if len(this.CastMapValueMessageNullable) != len(that1.CastMapValueMessageNullable) {
return fmt.Errorf("CastMapValueMessageNullable this(%v) Not Equal that(%v)", len(this.CastMapValueMessageNullable), len(that1.CastMapValueMessageNullable))
}
for i := range this.CastMapValueMessageNullable {
a := (*Wilson)(this.CastMapValueMessageNullable[i])
b := (*Wilson)(that1.CastMapValueMessageNullable[i])
if !a.Equal(b) {
return fmt.Errorf("CastMapValueMessageNullable this[%v](%v) Not Equal that[%v](%v)", i, this.CastMapValueMessageNullable[i], i, that1.CastMapValueMessageNullable[i])
}
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
}
return nil
}
func (this *Castaway) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*Castaway)
if !ok {
that2, ok := that.(Castaway)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if len(this.CastMapValueMessage) != len(that1.CastMapValueMessage) {
return false
}
for i := range this.CastMapValueMessage {
a := (Wilson)(this.CastMapValueMessage[i])
b := (Wilson)(that1.CastMapValueMessage[i])
if !(&a).Equal(&b) {
return false
}
}
if len(this.CastMapValueMessageNullable) != len(that1.CastMapValueMessageNullable) {
return false
}
for i := range this.CastMapValueMessageNullable {
a := (*Wilson)(this.CastMapValueMessageNullable[i])
b := (*Wilson)(that1.CastMapValueMessageNullable[i])
if !a.Equal(b) {
return false
}
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
func (this *Wilson) VerboseEqual(that interface{}) error {
if that == nil {
if this == nil {
return nil
}
return fmt.Errorf("that == nil && this != nil")
}
that1, ok := that.(*Wilson)
if !ok {
that2, ok := that.(Wilson)
if ok {
that1 = &that2
} else {
return fmt.Errorf("that is not of type *Wilson")
}
}
if that1 == nil {
if this == nil {
return nil
}
return fmt.Errorf("that is type *Wilson but is nil && this != nil")
} else if this == nil {
return fmt.Errorf("that is type *Wilson but is not nil && this == nil")
}
if this.Int64 != nil && that1.Int64 != nil {
if *this.Int64 != *that1.Int64 {
return fmt.Errorf("Int64 this(%v) Not Equal that(%v)", *this.Int64, *that1.Int64)
}
} else if this.Int64 != nil {
return fmt.Errorf("this.Int64 == nil && that.Int64 != nil")
} else if that1.Int64 != nil {
return fmt.Errorf("Int64 this(%v) Not Equal that(%v)", this.Int64, that1.Int64)
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
}
return nil
}
func (this *Wilson) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*Wilson)
if !ok {
that2, ok := that.(Wilson)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if this.Int64 != nil && that1.Int64 != nil {
if *this.Int64 != *that1.Int64 {
return false
}
} else if this.Int64 != nil {
return false
} else if that1.Int64 != nil {
return false
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
type CastawayFace interface {
Proto() github_com_gogo_protobuf_proto.Message
GetCastMapValueMessage() map[int32]MyWilson
GetCastMapValueMessageNullable() map[int32]*MyWilson
}
func (this *Castaway) Proto() github_com_gogo_protobuf_proto.Message {
return this
}
func (this *Castaway) TestProto() github_com_gogo_protobuf_proto.Message {
return NewCastawayFromFace(this)
}
func (this *Castaway) GetCastMapValueMessage() map[int32]MyWilson {
return this.CastMapValueMessage
}
func (this *Castaway) GetCastMapValueMessageNullable() map[int32]*MyWilson {
return this.CastMapValueMessageNullable
}
func NewCastawayFromFace(that CastawayFace) *Castaway {
this := &Castaway{}
this.CastMapValueMessage = that.GetCastMapValueMessage()
this.CastMapValueMessageNullable = that.GetCastMapValueMessageNullable()
return this
}
type WilsonFace interface {
Proto() github_com_gogo_protobuf_proto.Message
GetInt64() *int64
}
func (this *Wilson) Proto() github_com_gogo_protobuf_proto.Message {
return this
}
func (this *Wilson) TestProto() github_com_gogo_protobuf_proto.Message {
return NewWilsonFromFace(this)
}
func (this *Wilson) GetInt64() *int64 {
return this.Int64
}
func NewWilsonFromFace(that WilsonFace) *Wilson {
this := &Wilson{}
this.Int64 = that.GetInt64()
return this
}
func (this *Castaway) GoString() string {
if this == nil {
return "nil"
}
s := make([]string, 0, 6)
s = append(s, "&castvalue.Castaway{")
keysForCastMapValueMessage := make([]int32, 0, len(this.CastMapValueMessage))
for k := range this.CastMapValueMessage {
keysForCastMapValueMessage = append(keysForCastMapValueMessage, k)
}
github_com_gogo_protobuf_sortkeys.Int32s(keysForCastMapValueMessage)
mapStringForCastMapValueMessage := "map[int32]MyWilson{"
for _, k := range keysForCastMapValueMessage {
mapStringForCastMapValueMessage += fmt.Sprintf("%#v: %#v,", k, this.CastMapValueMessage[k])
}
mapStringForCastMapValueMessage += "}"
if this.CastMapValueMessage != nil {
s = append(s, "CastMapValueMessage: "+mapStringForCastMapValueMessage+",\n")
}
keysForCastMapValueMessageNullable := make([]int32, 0, len(this.CastMapValueMessageNullable))
for k := range this.CastMapValueMessageNullable {
keysForCastMapValueMessageNullable = append(keysForCastMapValueMessageNullable, k)
}
github_com_gogo_protobuf_sortkeys.Int32s(keysForCastMapValueMessageNullable)
mapStringForCastMapValueMessageNullable := "map[int32]*MyWilson{"
for _, k := range keysForCastMapValueMessageNullable {
mapStringForCastMapValueMessageNullable += fmt.Sprintf("%#v: %#v,", k, this.CastMapValueMessageNullable[k])
}
mapStringForCastMapValueMessageNullable += "}"
if this.CastMapValueMessageNullable != nil {
s = append(s, "CastMapValueMessageNullable: "+mapStringForCastMapValueMessageNullable+",\n")
}
if this.XXX_unrecognized != nil {
s = append(s, "XXX_unrecognized:"+fmt.Sprintf("%#v", this.XXX_unrecognized)+",\n")
}
s = append(s, "}")
return strings.Join(s, "")
}
func (this *Wilson) GoString() string {
if this == nil {
return "nil"
}
s := make([]string, 0, 5)
s = append(s, "&castvalue.Wilson{")
if this.Int64 != nil {
s = append(s, "Int64: "+valueToGoStringCastvalue(this.Int64, "int64")+",\n")
}
if this.XXX_unrecognized != nil {
s = append(s, "XXX_unrecognized:"+fmt.Sprintf("%#v", this.XXX_unrecognized)+",\n")
}
s = append(s, "}")
return strings.Join(s, "")
}
func valueToGoStringCastvalue(v interface{}, typ string) string {
rv := reflect.ValueOf(v)
if rv.IsNil() {
return "nil"
}
pv := reflect.Indirect(rv).Interface()
return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv)
}
func extensionToGoStringCastvalue(e map[int32]github_com_gogo_protobuf_proto.Extension) string {
if e == nil {
return "nil"
}
s := "map[int32]proto.Extension{"
keys := make([]int, 0, len(e))
for k := range e {
keys = append(keys, int(k))
}
sort.Ints(keys)
ss := []string{}
for _, k := range keys {
ss = append(ss, strconv.Itoa(k)+": "+e[int32(k)].GoString())
}
s += strings.Join(ss, ",") + "}"
return s
}
func (m *Castaway) Marshal() (data []byte, err error) {
size := m.Size()
data = make([]byte, size)
n, err := m.MarshalTo(data)
if err != nil {
return nil, err
}
return data[:n], nil
}
func (m *Castaway) MarshalTo(data []byte) (int, error) {
var i int
_ = i
var l int
_ = l
if len(m.CastMapValueMessage) > 0 {
for k := range m.CastMapValueMessage {
data[i] = 0xa
i++
v := m.CastMapValueMessage[k]
msgSize := ((*Wilson)(&v)).Size()
mapSize := 1 + sovCastvalue(uint64(k)) + 1 + msgSize + sovCastvalue(uint64(msgSize))
i = encodeVarintCastvalue(data, i, uint64(mapSize))
data[i] = 0x8
i++
i = encodeVarintCastvalue(data, i, uint64(k))
data[i] = 0x12
i++
i = encodeVarintCastvalue(data, i, uint64(((*Wilson)(&v)).Size()))
n1, err := ((*Wilson)(&v)).MarshalTo(data[i:])
if err != nil {
return 0, err
}
i += n1
}
}
if len(m.CastMapValueMessageNullable) > 0 {
for k := range m.CastMapValueMessageNullable {
data[i] = 0x12
i++
v := m.CastMapValueMessageNullable[k]
if v == nil {
return 0, errors.New("proto: map has nil element")
}
msgSize := ((*Wilson)(v)).Size()
mapSize := 1 + sovCastvalue(uint64(k)) + 1 + msgSize + sovCastvalue(uint64(msgSize))
i = encodeVarintCastvalue(data, i, uint64(mapSize))
data[i] = 0x8
i++
i = encodeVarintCastvalue(data, i, uint64(k))
data[i] = 0x12
i++
i = encodeVarintCastvalue(data, i, uint64(((*Wilson)(v)).Size()))
n2, err := ((*Wilson)(v)).MarshalTo(data[i:])
if err != nil {
return 0, err
}
i += n2
}
}
if m.XXX_unrecognized != nil {
i += copy(data[i:], m.XXX_unrecognized)
}
return i, nil
}
func (m *Wilson) Marshal() (data []byte, err error) {
size := m.Size()
data = make([]byte, size)
n, err := m.MarshalTo(data)
if err != nil {
return nil, err
}
return data[:n], nil
}
func (m *Wilson) MarshalTo(data []byte) (int, error) {
var i int
_ = i
var l int
_ = l
if m.Int64 != nil {
data[i] = 0x8
i++
i = encodeVarintCastvalue(data, i, uint64(*m.Int64))
}
if m.XXX_unrecognized != nil {
i += copy(data[i:], m.XXX_unrecognized)
}
return i, nil
}
func encodeFixed64Castvalue(data []byte, offset int, v uint64) int {
data[offset] = uint8(v)
data[offset+1] = uint8(v >> 8)
data[offset+2] = uint8(v >> 16)
data[offset+3] = uint8(v >> 24)
data[offset+4] = uint8(v >> 32)
data[offset+5] = uint8(v >> 40)
data[offset+6] = uint8(v >> 48)
data[offset+7] = uint8(v >> 56)
return offset + 8
}
func encodeFixed32Castvalue(data []byte, offset int, v uint32) int {
data[offset] = uint8(v)
data[offset+1] = uint8(v >> 8)
data[offset+2] = uint8(v >> 16)
data[offset+3] = uint8(v >> 24)
return offset + 4
}
func encodeVarintCastvalue(data []byte, offset int, v uint64) int {
for v >= 1<<7 {
data[offset] = uint8(v&0x7f | 0x80)
v >>= 7
offset++
}
data[offset] = uint8(v)
return offset + 1
}
func NewPopulatedCastaway(r randyCastvalue, easy bool) *Castaway {
this := &Castaway{}
if r.Intn(10) != 0 {
v1 := r.Intn(10)
this.CastMapValueMessage = make(map[int32]MyWilson)
for i := 0; i < v1; i++ {
this.CastMapValueMessage[int32(r.Int31())] = (MyWilson)(*NewPopulatedWilson(r, easy))
}
}
if r.Intn(10) != 0 {
v2 := r.Intn(10)
this.CastMapValueMessageNullable = make(map[int32]*MyWilson)
for i := 0; i < v2; i++ {
this.CastMapValueMessageNullable[int32(r.Int31())] = (*MyWilson)(NewPopulatedWilson(r, easy))
}
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedCastvalue(r, 3)
}
return this
}
func NewPopulatedWilson(r randyCastvalue, easy bool) *Wilson {
this := &Wilson{}
if r.Intn(10) != 0 {
v3 := int64(r.Int63())
if r.Intn(2) == 0 {
v3 *= -1
}
this.Int64 = &v3
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedCastvalue(r, 2)
}
return this
}
type randyCastvalue interface {
Float32() float32
Float64() float64
Int63() int64
Int31() int32
Uint32() uint32
Intn(n int) int
}
func randUTF8RuneCastvalue(r randyCastvalue) rune {
ru := r.Intn(62)
if ru < 10 {
return rune(ru + 48)
} else if ru < 36 {
return rune(ru + 55)
}
return rune(ru + 61)
}
func randStringCastvalue(r randyCastvalue) string {
v4 := r.Intn(100)
tmps := make([]rune, v4)
for i := 0; i < v4; i++ {
tmps[i] = randUTF8RuneCastvalue(r)
}
return string(tmps)
}
func randUnrecognizedCastvalue(r randyCastvalue, maxFieldNumber int) (data []byte) {
l := r.Intn(5)
for i := 0; i < l; i++ {
wire := r.Intn(4)
if wire == 3 {
wire = 5
}
fieldNumber := maxFieldNumber + r.Intn(100)
data = randFieldCastvalue(data, r, fieldNumber, wire)
}
return data
}
func randFieldCastvalue(data []byte, r randyCastvalue, fieldNumber int, wire int) []byte {
key := uint32(fieldNumber)<<3 | uint32(wire)
switch wire {
case 0:
data = encodeVarintPopulateCastvalue(data, uint64(key))
v5 := r.Int63()
if r.Intn(2) == 0 {
v5 *= -1
}
data = encodeVarintPopulateCastvalue(data, uint64(v5))
case 1:
data = encodeVarintPopulateCastvalue(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
case 2:
data = encodeVarintPopulateCastvalue(data, uint64(key))
ll := r.Intn(100)
data = encodeVarintPopulateCastvalue(data, uint64(ll))
for j := 0; j < ll; j++ {
data = append(data, byte(r.Intn(256)))
}
default:
data = encodeVarintPopulateCastvalue(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
}
return data
}
func encodeVarintPopulateCastvalue(data []byte, v uint64) []byte {
for v >= 1<<7 {
data = append(data, uint8(uint64(v)&0x7f|0x80))
v >>= 7
}
data = append(data, uint8(v))
return data
}
func (m *Castaway) Size() (n int) {
var l int
_ = l
if len(m.CastMapValueMessage) > 0 {
for k, v := range m.CastMapValueMessage {
_ = k
_ = v
l = ((*Wilson)(&v)).Size()
mapEntrySize := 1 + sovCastvalue(uint64(k)) + 1 + l + sovCastvalue(uint64(l))
n += mapEntrySize + 1 + sovCastvalue(uint64(mapEntrySize))
}
}
if len(m.CastMapValueMessageNullable) > 0 {
for k, v := range m.CastMapValueMessageNullable {
_ = k
_ = v
l = 0
if v != nil {
l = ((*Wilson)(v)).Size()
}
mapEntrySize := 1 + sovCastvalue(uint64(k)) + 1 + l + sovCastvalue(uint64(l))
n += mapEntrySize + 1 + sovCastvalue(uint64(mapEntrySize))
}
}
if m.XXX_unrecognized != nil {
n += len(m.XXX_unrecognized)
}
return n
}
func (m *Wilson) Size() (n int) {
var l int
_ = l
if m.Int64 != nil {
n += 1 + sovCastvalue(uint64(*m.Int64))
}
if m.XXX_unrecognized != nil {
n += len(m.XXX_unrecognized)
}
return n
}
func sovCastvalue(x uint64) (n int) {
for {
n++
x >>= 7
if x == 0 {
break
}
}
return n
}
func sozCastvalue(x uint64) (n int) {
return sovCastvalue(uint64((x << 1) ^ uint64((int64(x) >> 63))))
}
func (this *Castaway) String() string {
if this == nil {
return "nil"
}
keysForCastMapValueMessage := make([]int32, 0, len(this.CastMapValueMessage))
for k := range this.CastMapValueMessage {
keysForCastMapValueMessage = append(keysForCastMapValueMessage, k)
}
github_com_gogo_protobuf_sortkeys.Int32s(keysForCastMapValueMessage)
mapStringForCastMapValueMessage := "map[int32]MyWilson{"
for _, k := range keysForCastMapValueMessage {
mapStringForCastMapValueMessage += fmt.Sprintf("%v: %v,", k, this.CastMapValueMessage[k])
}
mapStringForCastMapValueMessage += "}"
keysForCastMapValueMessageNullable := make([]int32, 0, len(this.CastMapValueMessageNullable))
for k := range this.CastMapValueMessageNullable {
keysForCastMapValueMessageNullable = append(keysForCastMapValueMessageNullable, k)
}
github_com_gogo_protobuf_sortkeys.Int32s(keysForCastMapValueMessageNullable)
mapStringForCastMapValueMessageNullable := "map[int32]*MyWilson{"
for _, k := range keysForCastMapValueMessageNullable {
mapStringForCastMapValueMessageNullable += fmt.Sprintf("%v: %v,", k, this.CastMapValueMessageNullable[k])
}
mapStringForCastMapValueMessageNullable += "}"
s := strings.Join([]string{`&Castaway{`,
`CastMapValueMessage:` + mapStringForCastMapValueMessage + `,`,
`CastMapValueMessageNullable:` + mapStringForCastMapValueMessageNullable + `,`,
`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
`}`,
}, "")
return s
}
func (this *Wilson) String() string {
if this == nil {
return "nil"
}
s := strings.Join([]string{`&Wilson{`,
`Int64:` + valueToStringCastvalue(this.Int64) + `,`,
`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
`}`,
}, "")
return s
}
func valueToStringCastvalue(v interface{}) string {
rv := reflect.ValueOf(v)
if rv.IsNil() {
return "nil"
}
pv := reflect.Indirect(rv).Interface()
return fmt.Sprintf("*%v", pv)
}
var fileDescriptorCastvalue = []byte{
// 337 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0x52, 0x48, 0xce, 0xcf, 0x4d,
0xca, 0x2f, 0xd6, 0xcf, 0x4d, 0x2c, 0x2a, 0xce, 0x48, 0xcc, 0x49, 0x2d, 0xd2, 0x4f, 0x4e, 0x2c,
0x2e, 0x29, 0x4b, 0xcc, 0x29, 0x4d, 0xd5, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0x84, 0x0b,
0x48, 0xe9, 0xa6, 0x67, 0x96, 0x64, 0x94, 0x26, 0xe9, 0x01, 0xf5, 0xe8, 0xa7, 0xe7, 0xa7, 0xe7,
0xeb, 0x83, 0x55, 0x24, 0x95, 0xa6, 0x81, 0x79, 0x60, 0x0e, 0x98, 0x05, 0xd1, 0xa9, 0x74, 0x90,
0x99, 0x8b, 0xc3, 0x19, 0xa8, 0x39, 0xb1, 0x3c, 0xb1, 0x52, 0xa8, 0x80, 0x4b, 0x18, 0xc4, 0xf6,
0x4d, 0x2c, 0x08, 0x03, 0x99, 0xe5, 0x9b, 0x5a, 0x5c, 0x9c, 0x98, 0x9e, 0x2a, 0xc1, 0xa8, 0xc0,
0xac, 0xc1, 0x6d, 0xa4, 0xa3, 0x87, 0xb0, 0x15, 0xa6, 0x43, 0x0f, 0x8b, 0x72, 0xd7, 0xbc, 0x92,
0xa2, 0x4a, 0x27, 0x81, 0x13, 0xf7, 0xe4, 0x19, 0xba, 0xee, 0xcb, 0x73, 0xf8, 0x56, 0x86, 0x67,
0xe6, 0x14, 0xe7, 0xe7, 0x05, 0x09, 0x27, 0x63, 0xaa, 0x15, 0x6a, 0x61, 0xe4, 0x92, 0xc6, 0x62,
0x86, 0x5f, 0x69, 0x4e, 0x4e, 0x62, 0x52, 0x4e, 0xaa, 0x04, 0x13, 0xd8, 0x6a, 0x13, 0x22, 0xad,
0x86, 0x69, 0x83, 0x38, 0x81, 0x07, 0xc5, 0x7a, 0xe9, 0x64, 0xdc, 0xea, 0xa5, 0x22, 0xb9, 0x24,
0x70, 0xf9, 0x44, 0x48, 0x80, 0x8b, 0x39, 0x3b, 0xb5, 0x12, 0x18, 0x08, 0x8c, 0x1a, 0xac, 0x41,
0x20, 0xa6, 0x90, 0x3a, 0x17, 0x2b, 0xd8, 0x2d, 0x40, 0xd7, 0x31, 0x02, 0x5d, 0x27, 0x88, 0xe4,
0x3a, 0xa8, 0x65, 0x10, 0x79, 0x2b, 0x26, 0x0b, 0x46, 0xa9, 0x44, 0x2e, 0x05, 0x42, 0x2e, 0xa5,
0xd0, 0x0a, 0x25, 0x39, 0x2e, 0x36, 0x88, 0xa0, 0x90, 0x08, 0x17, 0xab, 0x67, 0x5e, 0x89, 0x99,
0x09, 0xd8, 0x28, 0xe6, 0x20, 0xd6, 0x4c, 0x10, 0xc7, 0xc9, 0xe7, 0xc4, 0x43, 0x39, 0x86, 0x0b,
0x40, 0x7c, 0x03, 0x88, 0x1f, 0x3c, 0x94, 0x63, 0x7c, 0x01, 0xc4, 0x1f, 0x80, 0xf8, 0x07, 0x10,
0x37, 0x3c, 0x92, 0x63, 0x5c, 0x01, 0xc4, 0x1b, 0x80, 0x78, 0x07, 0x10, 0x1f, 0x00, 0xe2, 0x13,
0x40, 0x7c, 0xe1, 0x11, 0x50, 0x2d, 0x90, 0x7e, 0x01, 0xa4, 0x3f, 0x00, 0xe9, 0x1f, 0x40, 0xba,
0xe1, 0xb1, 0x1c, 0x03, 0x20, 0x00, 0x00, 0xff, 0xff, 0x15, 0xb6, 0x94, 0x56, 0x8e, 0x02, 0x00,
0x00,
}

View File

@@ -0,0 +1,31 @@
// Extensions for Protocol Buffers to create more go like structures.
//
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package castvalue
type MyWilson Wilson

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,31 @@
// Extensions for Protocol Buffers to create more go like structures.
//
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package castvalue
type MyWilson Wilson

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,31 @@
// Extensions for Protocol Buffers to create more go like structures.
//
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package castvalue
type MyWilson Wilson

View File

@@ -0,0 +1,978 @@
// Code generated by protoc-gen-gogo.
// source: combos/unsafemarshaler/castvalue.proto
// DO NOT EDIT!
/*
Package castvalue is a generated protocol buffer package.
It is generated from these files:
combos/unsafemarshaler/castvalue.proto
It has these top-level messages:
Castaway
Wilson
*/
package castvalue
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "github.com/gogo/protobuf/gogoproto"
import github_com_gogo_protobuf_protoc_gen_gogo_descriptor "github.com/gogo/protobuf/protoc-gen-gogo/descriptor"
import github_com_gogo_protobuf_proto "github.com/gogo/protobuf/proto"
import compress_gzip "compress/gzip"
import bytes "bytes"
import io_ioutil "io/ioutil"
import strings "strings"
import sort "sort"
import strconv "strconv"
import reflect "reflect"
import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys"
import errors "errors"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.GoGoProtoPackageIsVersion1
type Castaway struct {
CastMapValueMessage map[int32]MyWilson `protobuf:"bytes,1,rep,name=CastMapValueMessage,json=castMapValueMessage,castvalue=MyWilson,castvaluetype=castvalue.Wilson" json:"CastMapValueMessage" protobuf_key:"varint,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
CastMapValueMessageNullable map[int32]*MyWilson `protobuf:"bytes,2,rep,name=CastMapValueMessageNullable,json=castMapValueMessageNullable,castvalue=MyWilson,castvaluetype=castvalue.Wilson" json:"CastMapValueMessageNullable,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
XXX_unrecognized []byte `json:"-"`
}
func (m *Castaway) Reset() { *m = Castaway{} }
func (*Castaway) ProtoMessage() {}
func (*Castaway) Descriptor() ([]byte, []int) { return fileDescriptorCastvalue, []int{0} }
type Wilson struct {
Int64 *int64 `protobuf:"varint,1,opt,name=Int64,json=int64" json:"Int64,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
func (m *Wilson) Reset() { *m = Wilson{} }
func (*Wilson) ProtoMessage() {}
func (*Wilson) Descriptor() ([]byte, []int) { return fileDescriptorCastvalue, []int{1} }
func init() {
proto.RegisterType((*Castaway)(nil), "castvalue.Castaway")
proto.RegisterType((*Wilson)(nil), "castvalue.Wilson")
}
func (this *Castaway) Description() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
return CastvalueDescription()
}
func (this *Wilson) Description() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
return CastvalueDescription()
}
func CastvalueDescription() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
d := &github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet{}
var gzipped = []byte{
// 3472 bytes of a gzipped FileDescriptorSet
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xcc, 0x5a, 0x6b, 0x6c, 0x23, 0xd5,
0xf5, 0x5f, 0xc7, 0x76, 0x62, 0x1f, 0x3b, 0x8e, 0x33, 0x09, 0xbb, 0xde, 0x2c, 0x6c, 0x76, 0xcd,
0x63, 0x97, 0x05, 0x12, 0xfe, 0xfb, 0xe7, 0xb1, 0x98, 0xff, 0x1f, 0x94, 0x87, 0x37, 0x78, 0x95,
0x57, 0x27, 0x09, 0xec, 0xd2, 0x0f, 0xa3, 0xc9, 0xf8, 0xc6, 0xf1, 0xee, 0x78, 0xc6, 0xf5, 0x8c,
0x77, 0x37, 0x7c, 0xa2, 0x82, 0xb6, 0xa2, 0x55, 0xdf, 0x48, 0xe5, 0xdd, 0x82, 0xd4, 0x42, 0xe9,
0x0b, 0xfa, 0x52, 0xd5, 0x4f, 0x54, 0x15, 0x2d, 0x9f, 0xaa, 0xb6, 0x9f, 0xfa, 0xa1, 0x6a, 0x81,
0x22, 0x95, 0xb6, 0xb4, 0xa5, 0xd2, 0x4a, 0x45, 0xe2, 0x4b, 0xcf, 0x7d, 0x8d, 0x67, 0x6c, 0x27,
0xe3, 0x50, 0x51, 0x1a, 0x69, 0x94, 0x99, 0x73, 0xcf, 0xef, 0x37, 0xf7, 0x9e, 0x7b, 0xee, 0x39,
0xe7, 0xde, 0x31, 0xfc, 0xf4, 0x7f, 0xe0, 0x50, 0xc5, 0xb6, 0x2b, 0x26, 0x99, 0xac, 0x37, 0x6c,
0xd7, 0x5e, 0x6f, 0x6e, 0x4c, 0x96, 0x89, 0x63, 0x34, 0xaa, 0x75, 0xd7, 0x6e, 0x4c, 0x30, 0x99,
0x32, 0xc4, 0x35, 0x26, 0xa4, 0x46, 0x7e, 0x01, 0x86, 0x4f, 0x56, 0x4d, 0x32, 0xeb, 0x29, 0xae,
0x10, 0x57, 0x39, 0x01, 0xb1, 0x0d, 0x14, 0xe6, 0x22, 0x87, 0xa2, 0x47, 0x53, 0xc7, 0xaf, 0x9a,
0x68, 0x03, 0x4d, 0x04, 0x11, 0xcb, 0x54, 0xac, 0x32, 0x44, 0xfe, 0x8d, 0x18, 0x8c, 0x74, 0x69,
0x55, 0x14, 0x88, 0x59, 0x7a, 0x8d, 0x32, 0x46, 0x8e, 0x26, 0x55, 0x76, 0xaf, 0xe4, 0x60, 0xa0,
0xae, 0x1b, 0xe7, 0xf4, 0x0a, 0xc9, 0xf5, 0x31, 0xb1, 0x7c, 0x54, 0x0e, 0x02, 0x94, 0x49, 0x9d,
0x58, 0x65, 0x62, 0x19, 0x5b, 0xb9, 0x28, 0xf6, 0x22, 0xa9, 0xfa, 0x24, 0xca, 0x75, 0x30, 0x5c,
0x6f, 0xae, 0x9b, 0x55, 0x43, 0xf3, 0xa9, 0x01, 0xaa, 0xc5, 0xd5, 0x2c, 0x6f, 0x98, 0x6d, 0x29,
0x1f, 0x81, 0xa1, 0x0b, 0x44, 0x3f, 0xe7, 0x57, 0x4d, 0x31, 0xd5, 0x0c, 0x15, 0xfb, 0x14, 0x67,
0x20, 0x5d, 0x23, 0x8e, 0x83, 0x1d, 0xd0, 0xdc, 0xad, 0x3a, 0xc9, 0xc5, 0xd8, 0xe8, 0x0f, 0x75,
0x8c, 0xbe, 0x7d, 0xe4, 0x29, 0x81, 0x5a, 0x45, 0x90, 0x32, 0x05, 0x49, 0x62, 0x35, 0x6b, 0x9c,
0x21, 0xbe, 0x8d, 0xfd, 0x8a, 0xa8, 0xd1, 0xce, 0x92, 0xa0, 0x30, 0x41, 0x31, 0xe0, 0x90, 0xc6,
0xf9, 0xaa, 0x41, 0x72, 0xfd, 0x8c, 0xe0, 0x48, 0x07, 0xc1, 0x0a, 0x6f, 0x6f, 0xe7, 0x90, 0x38,
0x1c, 0x4a, 0x92, 0x5c, 0x74, 0x89, 0xe5, 0x54, 0x6d, 0x2b, 0x37, 0xc0, 0x48, 0xae, 0xee, 0x32,
0x8b, 0xc4, 0x2c, 0xb7, 0x53, 0xb4, 0x70, 0xca, 0x2d, 0x30, 0x60, 0xd7, 0x5d, 0xbc, 0x73, 0x72,
0x09, 0x9c, 0x9f, 0xd4, 0xf1, 0xcb, 0xbb, 0x3a, 0xc2, 0x12, 0xd7, 0x51, 0xa5, 0xb2, 0x52, 0x82,
0xac, 0x63, 0x37, 0x1b, 0x06, 0xd1, 0x0c, 0xbb, 0x4c, 0xb4, 0xaa, 0xb5, 0x61, 0xe7, 0x92, 0x8c,
0x60, 0xbc, 0x73, 0x20, 0x4c, 0x71, 0x06, 0xf5, 0x4a, 0xa8, 0xa6, 0x66, 0x9c, 0xc0, 0xb3, 0xb2,
0x17, 0xfa, 0x9d, 0x2d, 0xcb, 0xd5, 0x2f, 0xe6, 0xd2, 0xcc, 0x43, 0xc4, 0x53, 0xfe, 0x9f, 0x71,
0x18, 0xea, 0xc5, 0xc5, 0x6e, 0x87, 0xf8, 0x06, 0x1d, 0x25, 0x3a, 0xd8, 0x2e, 0x6c, 0xc0, 0x31,
0x41, 0x23, 0xf6, 0xbf, 0x47, 0x23, 0x4e, 0x41, 0xca, 0x22, 0x8e, 0x4b, 0xca, 0xdc, 0x23, 0xa2,
0x3d, 0xfa, 0x14, 0x70, 0x50, 0xa7, 0x4b, 0xc5, 0xde, 0x93, 0x4b, 0x9d, 0x86, 0x21, 0xaf, 0x4b,
0x5a, 0x43, 0xb7, 0x2a, 0xd2, 0x37, 0x27, 0xc3, 0x7a, 0x32, 0x51, 0x94, 0x38, 0x95, 0xc2, 0xd4,
0x0c, 0x09, 0x3c, 0x2b, 0xb3, 0x00, 0xb6, 0x45, 0xec, 0x0d, 0x5c, 0x5e, 0x86, 0x89, 0x7e, 0xd2,
0xdd, 0x4a, 0x4b, 0x54, 0xa5, 0xc3, 0x4a, 0x36, 0x97, 0x1a, 0xa6, 0x72, 0x5b, 0xcb, 0xd5, 0x06,
0xb6, 0xf1, 0x94, 0x05, 0xbe, 0xc8, 0x3a, 0xbc, 0x6d, 0x0d, 0x32, 0x0d, 0x42, 0xfd, 0x1e, 0x4d,
0xcc, 0x47, 0x96, 0x64, 0x9d, 0x98, 0x08, 0x1d, 0x99, 0x2a, 0x60, 0x7c, 0x60, 0x83, 0x0d, 0xff,
0xa3, 0x72, 0x25, 0x78, 0x02, 0x8d, 0xb9, 0x15, 0xb0, 0x28, 0x94, 0x96, 0xc2, 0x45, 0x94, 0x8d,
0x9d, 0x80, 0x4c, 0xd0, 0x3c, 0xca, 0x28, 0xc4, 0x1d, 0x57, 0x6f, 0xb8, 0xcc, 0x0b, 0xe3, 0x2a,
0x7f, 0x50, 0xb2, 0x10, 0xc5, 0x20, 0xc3, 0xa2, 0x5c, 0x5c, 0xa5, 0xb7, 0x63, 0xb7, 0xc2, 0x60,
0xe0, 0xf5, 0xbd, 0x02, 0xf3, 0x8f, 0xf4, 0xc3, 0x68, 0x37, 0x9f, 0xeb, 0xea, 0xfe, 0xb8, 0x7c,
0xd0, 0x03, 0xd6, 0x49, 0x03, 0xfd, 0x8e, 0x32, 0x88, 0x27, 0xf4, 0xa8, 0xb8, 0xa9, 0xaf, 0x13,
0x13, 0xbd, 0x29, 0x72, 0x34, 0x73, 0xfc, 0xba, 0x9e, 0xbc, 0x7a, 0x62, 0x9e, 0x42, 0x54, 0x8e,
0x54, 0xee, 0x80, 0x98, 0x08, 0x71, 0x94, 0xe1, 0x58, 0x6f, 0x0c, 0xd4, 0x17, 0x55, 0x86, 0x53,
0x0e, 0x40, 0x92, 0xfe, 0xe7, 0xb6, 0xed, 0x67, 0x7d, 0x4e, 0x50, 0x01, 0xb5, 0xab, 0x32, 0x06,
0x09, 0xe6, 0x66, 0x65, 0x22, 0x53, 0x83, 0xf7, 0x4c, 0x27, 0xa6, 0x4c, 0x36, 0xf4, 0xa6, 0xe9,
0x6a, 0xe7, 0x75, 0xb3, 0x49, 0x98, 0xc3, 0xe0, 0xc4, 0x08, 0xe1, 0xdd, 0x54, 0xa6, 0x8c, 0x43,
0x8a, 0x7b, 0x65, 0x15, 0x31, 0x17, 0x59, 0xf4, 0x89, 0xab, 0xdc, 0x51, 0x4b, 0x54, 0x42, 0x5f,
0x7f, 0xd6, 0xc1, 0xb5, 0x20, 0xa6, 0x96, 0xbd, 0x82, 0x0a, 0xd8, 0xeb, 0x6f, 0x6d, 0x0f, 0x7c,
0x57, 0x74, 0x1f, 0x5e, 0xbb, 0x2f, 0xe6, 0x7f, 0xd8, 0x07, 0x31, 0xb6, 0xde, 0x86, 0x20, 0xb5,
0x7a, 0x66, 0xb9, 0xa8, 0xcd, 0x2e, 0xad, 0x4d, 0xcf, 0x17, 0xb3, 0x11, 0x25, 0x03, 0xc0, 0x04,
0x27, 0xe7, 0x97, 0xa6, 0x56, 0xb3, 0x7d, 0xde, 0x73, 0x69, 0x71, 0xf5, 0x96, 0x9b, 0xb2, 0x51,
0x0f, 0xb0, 0xc6, 0x05, 0x31, 0xbf, 0xc2, 0xff, 0x1e, 0xcf, 0xc6, 0xd1, 0x13, 0xd2, 0x9c, 0xa0,
0x74, 0xba, 0x38, 0x8b, 0x1a, 0xfd, 0x41, 0x09, 0xea, 0x0c, 0x28, 0x83, 0x90, 0x64, 0x92, 0xe9,
0xa5, 0xa5, 0xf9, 0x6c, 0xc2, 0xe3, 0x5c, 0x59, 0x55, 0x4b, 0x8b, 0x73, 0xd9, 0xa4, 0xc7, 0x39,
0xa7, 0x2e, 0xad, 0x2d, 0x67, 0xc1, 0x63, 0x58, 0x28, 0xae, 0xac, 0x4c, 0xcd, 0x15, 0xb3, 0x29,
0x4f, 0x63, 0xfa, 0xcc, 0x6a, 0x71, 0x25, 0x9b, 0x0e, 0x74, 0x0b, 0x5f, 0x31, 0xe8, 0xbd, 0xa2,
0xb8, 0xb8, 0xb6, 0x90, 0xcd, 0x28, 0xc3, 0x30, 0xc8, 0x5f, 0x21, 0x3b, 0x31, 0xd4, 0x26, 0xc2,
0x9e, 0x66, 0x5b, 0x1d, 0xe1, 0x2c, 0xc3, 0x01, 0x01, 0x6a, 0x28, 0xf9, 0x19, 0x88, 0x33, 0xef,
0x42, 0x2f, 0xce, 0xcc, 0x4f, 0x4d, 0x17, 0xe7, 0xb5, 0xa5, 0xe5, 0xd5, 0xd2, 0xd2, 0xe2, 0xd4,
0x3c, 0xda, 0xce, 0x93, 0xa9, 0xc5, 0x0f, 0xad, 0x95, 0xd4, 0xe2, 0x2c, 0xda, 0xcf, 0x27, 0x5b,
0x2e, 0x4e, 0xad, 0xa2, 0x2c, 0x9a, 0x3f, 0x06, 0xa3, 0xdd, 0xe2, 0x4c, 0xb7, 0x95, 0x91, 0x7f,
0x26, 0x02, 0x23, 0x5d, 0x42, 0x66, 0xd7, 0x55, 0x74, 0x27, 0xc4, 0xb9, 0xa7, 0xf1, 0x24, 0x72,
0x6d, 0xd7, 0xd8, 0xcb, 0xfc, 0xae, 0x23, 0x91, 0x30, 0x9c, 0x3f, 0x91, 0x46, 0xb7, 0x49, 0xa4,
0x94, 0xa2, 0xc3, 0x9d, 0x1e, 0x88, 0x40, 0x6e, 0x3b, 0xee, 0x90, 0xf5, 0xde, 0x17, 0x58, 0xef,
0xb7, 0xb7, 0x77, 0xe0, 0xf0, 0xf6, 0x63, 0xe8, 0xe8, 0xc5, 0xb3, 0x11, 0xd8, 0xdb, 0xbd, 0xde,
0xe8, 0xda, 0x87, 0x3b, 0xa0, 0xbf, 0x46, 0xdc, 0x4d, 0x5b, 0xe6, 0xdc, 0x6b, 0xba, 0x44, 0x72,
0xda, 0xdc, 0x6e, 0x2b, 0x81, 0xf2, 0xa7, 0x82, 0xe8, 0x76, 0x45, 0x03, 0xef, 0x4d, 0x47, 0x4f,
0x1f, 0xea, 0x83, 0xcb, 0xba, 0x92, 0x77, 0xed, 0xe8, 0x15, 0x00, 0x55, 0xab, 0xde, 0x74, 0x79,
0x5e, 0xe5, 0x61, 0x26, 0xc9, 0x24, 0x6c, 0x09, 0xd3, 0x10, 0xd2, 0x74, 0xbd, 0xf6, 0x28, 0x6b,
0x07, 0x2e, 0x62, 0x0a, 0x27, 0x5a, 0x1d, 0x8d, 0xb1, 0x8e, 0x1e, 0xdc, 0x66, 0xa4, 0x1d, 0x29,
0xeb, 0x46, 0xc8, 0x1a, 0x66, 0x95, 0x58, 0xae, 0xe6, 0xb8, 0x0d, 0xa2, 0xd7, 0xaa, 0x56, 0x85,
0xc5, 0xd1, 0x44, 0x21, 0xbe, 0xa1, 0x9b, 0x0e, 0x51, 0x87, 0x78, 0xf3, 0x8a, 0x6c, 0xa5, 0x08,
0x96, 0x2c, 0x1a, 0x3e, 0x44, 0x7f, 0x00, 0xc1, 0x9b, 0x3d, 0x44, 0xfe, 0xd7, 0x03, 0x90, 0xf2,
0x55, 0x67, 0xca, 0x61, 0x48, 0x9f, 0xd5, 0xcf, 0xeb, 0x9a, 0xac, 0xb8, 0xb9, 0x25, 0x52, 0x54,
0xb6, 0x2c, 0xaa, 0xee, 0x1b, 0x61, 0x94, 0xa9, 0xe0, 0x18, 0xf1, 0x45, 0x86, 0xa9, 0x3b, 0x0e,
0x33, 0x5a, 0x82, 0xa9, 0x2a, 0xb4, 0x6d, 0x89, 0x36, 0xcd, 0xc8, 0x16, 0xe5, 0x66, 0x18, 0x61,
0x88, 0x1a, 0x06, 0xde, 0x6a, 0xdd, 0x24, 0x1a, 0xdd, 0x03, 0x38, 0x2c, 0x9e, 0x7a, 0x3d, 0x1b,
0xa6, 0x1a, 0x0b, 0x42, 0x81, 0xf6, 0xc8, 0x51, 0xe6, 0xe0, 0x0a, 0x06, 0xab, 0x10, 0x8b, 0x34,
0x74, 0x97, 0x68, 0xe4, 0x23, 0x4d, 0xd4, 0xd5, 0x74, 0xab, 0xac, 0x6d, 0xea, 0xce, 0x66, 0x6e,
0xd4, 0x4f, 0xb0, 0x9f, 0xea, 0xce, 0x09, 0xd5, 0x22, 0xd3, 0x9c, 0xb2, 0xca, 0x77, 0xa1, 0x9e,
0x52, 0x80, 0xbd, 0x8c, 0x08, 0x8d, 0x82, 0x63, 0xd6, 0x8c, 0x4d, 0x62, 0x9c, 0xd3, 0x9a, 0xee,
0xc6, 0x89, 0xdc, 0x01, 0x3f, 0x03, 0xeb, 0xe4, 0x0a, 0xd3, 0x99, 0xa1, 0x2a, 0x6b, 0xa8, 0xa1,
0xac, 0x40, 0x9a, 0xce, 0x47, 0xad, 0x7a, 0x1f, 0x76, 0xdb, 0x6e, 0xb0, 0x1c, 0x91, 0xe9, 0xb2,
0xb8, 0x7d, 0x46, 0x9c, 0x58, 0x12, 0x80, 0x05, 0xac, 0x4f, 0x0b, 0xf1, 0x95, 0xe5, 0x62, 0x71,
0x56, 0x4d, 0x49, 0x96, 0x93, 0x76, 0x83, 0xfa, 0x54, 0xc5, 0xf6, 0x6c, 0x9c, 0xe2, 0x3e, 0x55,
0xb1, 0xa5, 0x85, 0xd1, 0x5e, 0x86, 0xc1, 0x87, 0x8d, 0x7b, 0x17, 0x51, 0xac, 0x3b, 0xb9, 0x6c,
0xc0, 0x5e, 0x86, 0x31, 0xc7, 0x15, 0x84, 0x9b, 0x3b, 0xb8, 0x24, 0x2e, 0x6b, 0xd9, 0xcb, 0x0f,
0x1c, 0xee, 0x18, 0x65, 0x3b, 0x14, 0xdf, 0x58, 0xdf, 0xea, 0x04, 0x2a, 0x81, 0x37, 0xd6, 0xb7,
0xda, 0x61, 0x57, 0xb3, 0x0d, 0x58, 0x83, 0x18, 0x68, 0xf2, 0x72, 0x6e, 0x9f, 0x5f, 0xdb, 0xd7,
0xa0, 0x4c, 0xa2, 0x23, 0x1b, 0x1a, 0xb1, 0xf4, 0x75, 0x9c, 0x7b, 0xbd, 0x81, 0x37, 0x4e, 0x6e,
0xdc, 0xaf, 0x9c, 0x31, 0x8c, 0x22, 0x6b, 0x9d, 0x62, 0x8d, 0xca, 0x31, 0x18, 0xb6, 0xd7, 0xcf,
0x1a, 0xdc, 0xb9, 0x34, 0xe4, 0xd9, 0xa8, 0x5e, 0xcc, 0x5d, 0xc5, 0xcc, 0x34, 0x44, 0x1b, 0x98,
0x6b, 0x2d, 0x33, 0xb1, 0x72, 0x2d, 0x92, 0x3b, 0x9b, 0x7a, 0xa3, 0xce, 0x92, 0xb4, 0x83, 0x46,
0x25, 0xb9, 0xab, 0xb9, 0x2a, 0x97, 0x2f, 0x4a, 0xb1, 0x52, 0x84, 0x71, 0x3a, 0x78, 0x4b, 0xb7,
0x6c, 0xad, 0xe9, 0x10, 0xad, 0xd5, 0x45, 0x6f, 0x2e, 0xae, 0xa1, 0xdd, 0x52, 0x2f, 0x97, 0x6a,
0x6b, 0x0e, 0x06, 0x33, 0xa9, 0x24, 0xa7, 0xe7, 0x34, 0x8c, 0x36, 0xad, 0xaa, 0x85, 0x2e, 0x8e,
0x2d, 0x14, 0xcc, 0x17, 0x6c, 0xee, 0x8f, 0x03, 0xdb, 0x14, 0xdd, 0x6b, 0x7e, 0x6d, 0xee, 0x24,
0xea, 0x48, 0xb3, 0x53, 0x98, 0x2f, 0x40, 0xda, 0xef, 0x3b, 0x4a, 0x12, 0xb8, 0xf7, 0x60, 0x76,
0xc3, 0x8c, 0x3a, 0xb3, 0x34, 0x4b, 0x73, 0xe1, 0xbd, 0x45, 0x4c, 0x6c, 0x98, 0x93, 0xe7, 0x4b,
0xab, 0x45, 0x4d, 0x5d, 0x5b, 0x5c, 0x2d, 0x2d, 0x14, 0xb3, 0xd1, 0x63, 0xc9, 0xc4, 0x9b, 0x03,
0xd9, 0xfb, 0xf1, 0xaf, 0x2f, 0xff, 0x72, 0x1f, 0x64, 0x82, 0x75, 0xb0, 0xf2, 0x7f, 0xb0, 0x4f,
0x6e, 0x5a, 0x1d, 0xe2, 0x6a, 0x17, 0xaa, 0x0d, 0xe6, 0xce, 0x35, 0x9d, 0x57, 0x92, 0xde, 0x4c,
0x8c, 0x0a, 0x2d, 0xdc, 0xde, 0xdf, 0x83, 0x3a, 0x27, 0x99, 0x8a, 0x32, 0x0f, 0xe3, 0x68, 0x32,
0xac, 0x35, 0xad, 0xb2, 0xde, 0x28, 0x6b, 0xad, 0xe3, 0x02, 0x4d, 0x37, 0xd0, 0x0f, 0x1c, 0x9b,
0x67, 0x12, 0x8f, 0xe5, 0x72, 0xcb, 0x5e, 0x11, 0xca, 0xad, 0x10, 0x3b, 0x25, 0x54, 0xdb, 0xbc,
0x26, 0xba, 0x9d, 0xd7, 0x60, 0xed, 0x55, 0xd3, 0xeb, 0xe8, 0x36, 0x6e, 0x63, 0x8b, 0x55, 0x6f,
0x09, 0x35, 0x81, 0x82, 0x22, 0x7d, 0x7e, 0xff, 0xe6, 0xc0, 0x6f, 0xc7, 0xdf, 0x46, 0x21, 0xed,
0xaf, 0xe0, 0x68, 0x41, 0x6c, 0xb0, 0x30, 0x1f, 0x61, 0x51, 0xe0, 0xca, 0x1d, 0xeb, 0xbd, 0x89,
0x19, 0x1a, 0xff, 0x0b, 0xfd, 0xbc, 0xae, 0x52, 0x39, 0x92, 0xe6, 0x5e, 0xea, 0x6b, 0x84, 0x57,
0xeb, 0x09, 0x55, 0x3c, 0x61, 0xb0, 0xeb, 0x3f, 0xeb, 0x30, 0xee, 0x7e, 0xc6, 0x7d, 0xd5, 0xce,
0xdc, 0xa7, 0x56, 0x18, 0x79, 0xf2, 0xd4, 0x8a, 0xb6, 0xb8, 0xa4, 0x2e, 0x4c, 0xcd, 0xab, 0x02,
0xae, 0xec, 0x87, 0x98, 0xa9, 0xdf, 0xb7, 0x15, 0xcc, 0x14, 0x4c, 0xd4, 0xab, 0xe1, 0x91, 0x81,
0x1e, 0x79, 0x04, 0xe3, 0x33, 0x13, 0xbd, 0x8f, 0xae, 0x3f, 0x09, 0x71, 0x66, 0x2f, 0x05, 0x40,
0x58, 0x2c, 0xbb, 0x47, 0x49, 0x40, 0x6c, 0x66, 0x49, 0xa5, 0xee, 0x8f, 0xfe, 0xce, 0xa5, 0xda,
0x72, 0xa9, 0x38, 0x83, 0x2b, 0x20, 0x7f, 0x33, 0xf4, 0x73, 0x23, 0xd0, 0xa5, 0xe1, 0x99, 0x01,
0x41, 0xfc, 0x51, 0x70, 0x44, 0x64, 0xeb, 0xda, 0xc2, 0x74, 0x51, 0xcd, 0xf6, 0xf9, 0xa7, 0xf7,
0xc7, 0x11, 0x48, 0xf9, 0x0a, 0x2a, 0x9a, 0xca, 0x75, 0xd3, 0xb4, 0x2f, 0x68, 0xba, 0x59, 0xc5,
0x08, 0xc5, 0xe7, 0x07, 0x98, 0x68, 0x8a, 0x4a, 0x7a, 0xb5, 0xdf, 0x7f, 0xc4, 0x37, 0x9f, 0x8a,
0x40, 0xb6, 0xbd, 0x18, 0x6b, 0xeb, 0x60, 0xe4, 0x03, 0xed, 0xe0, 0x13, 0x11, 0xc8, 0x04, 0x2b,
0xb0, 0xb6, 0xee, 0x1d, 0xfe, 0x40, 0xbb, 0xf7, 0x78, 0x04, 0x06, 0x03, 0x75, 0xd7, 0x7f, 0x55,
0xef, 0x1e, 0x8b, 0xc2, 0x48, 0x17, 0x1c, 0x06, 0x20, 0x5e, 0xa0, 0xf2, 0x9a, 0xf9, 0x86, 0x5e,
0xde, 0x35, 0x41, 0xf3, 0xdf, 0xb2, 0xde, 0x70, 0x45, 0x3d, 0x8b, 0xf9, 0xb2, 0x5a, 0xc6, 0xa0,
0x5a, 0xdd, 0xa8, 0x62, 0xf9, 0xc6, 0x77, 0x2c, 0xbc, 0x6a, 0x1d, 0x6a, 0xc9, 0xf9, 0xf6, 0xf8,
0x7a, 0x50, 0xea, 0xb6, 0x53, 0x75, 0xab, 0xe7, 0xe9, 0xf1, 0x9c, 0xdc, 0x48, 0xd3, 0x2a, 0x36,
0xa6, 0x66, 0x65, 0x4b, 0xc9, 0x72, 0x3d, 0x6d, 0x8b, 0x54, 0xf4, 0x36, 0x6d, 0x1a, 0x86, 0xa2,
0x6a, 0x56, 0xb6, 0x78, 0xda, 0x58, 0x68, 0x96, 0xed, 0x26, 0x2d, 0x08, 0xb8, 0x1e, 0x8d, 0x7a,
0x11, 0x35, 0xc5, 0x65, 0x9e, 0x8a, 0xa8, 0xd8, 0x5a, 0x3b, 0xf8, 0xb4, 0x9a, 0xe2, 0x32, 0xae,
0x72, 0x04, 0x86, 0xf4, 0x4a, 0xa5, 0x41, 0xc9, 0x25, 0x11, 0x2f, 0x43, 0x33, 0x9e, 0x98, 0x29,
0x8e, 0x9d, 0x82, 0x84, 0xb4, 0x03, 0x4d, 0x2c, 0xd4, 0x12, 0x98, 0xf3, 0xd9, 0x39, 0x4a, 0x1f,
0xdd, 0xd4, 0x5b, 0xb2, 0x11, 0x5f, 0x5a, 0x75, 0xb4, 0xd6, 0x81, 0x5e, 0x1f, 0xb6, 0x27, 0xd4,
0x54, 0xd5, 0xf1, 0x4e, 0x70, 0xf2, 0xcf, 0x62, 0x7a, 0x0d, 0x1e, 0x48, 0x2a, 0xb3, 0x90, 0x30,
0x6d, 0xf4, 0x0f, 0x8a, 0xe0, 0xa7, 0xe1, 0x47, 0x43, 0xce, 0x30, 0x27, 0xe6, 0x85, 0xbe, 0xea,
0x21, 0xc7, 0x7e, 0x11, 0x81, 0x84, 0x14, 0x63, 0xa2, 0x88, 0xd5, 0x75, 0x77, 0x93, 0xd1, 0xc5,
0xa7, 0xfb, 0xb2, 0x11, 0x95, 0x3d, 0x53, 0x39, 0x56, 0x33, 0x16, 0x73, 0x01, 0x21, 0xa7, 0xcf,
0x74, 0x5e, 0x4d, 0xa2, 0x97, 0x59, 0x81, 0x6b, 0xd7, 0x6a, 0x38, 0x93, 0x8e, 0x9c, 0x57, 0x21,
0x9f, 0x11, 0x62, 0x7a, 0x2e, 0xee, 0x36, 0xf4, 0xaa, 0x19, 0xd0, 0x8d, 0x31, 0xdd, 0xac, 0x6c,
0xf0, 0x94, 0x0b, 0xb0, 0x5f, 0xf2, 0x96, 0x89, 0xab, 0x63, 0xf1, 0x5c, 0x6e, 0x81, 0xfa, 0xd9,
0x69, 0xd7, 0x3e, 0xa1, 0x30, 0x2b, 0xda, 0x25, 0x76, 0xfa, 0x34, 0x16, 0xb2, 0x76, 0xad, 0xdd,
0x12, 0xd3, 0xd9, 0xb6, 0x7d, 0x97, 0x73, 0x57, 0xe4, 0x5e, 0x68, 0x15, 0x15, 0xcf, 0xf4, 0x45,
0xe7, 0x96, 0xa7, 0x9f, 0xef, 0x1b, 0x9b, 0xe3, 0xb8, 0x65, 0x69, 0x41, 0x95, 0x6c, 0x98, 0xc4,
0xa0, 0xd6, 0x81, 0xa7, 0xaf, 0x84, 0x1b, 0x2a, 0x55, 0x77, 0xb3, 0xb9, 0x3e, 0x81, 0x6f, 0x98,
0xac, 0xd8, 0x15, 0xbb, 0xf5, 0x39, 0x83, 0x3e, 0xb1, 0x07, 0x76, 0x27, 0x3e, 0x69, 0x24, 0x3d,
0xe9, 0x58, 0xe8, 0xf7, 0x8f, 0xc2, 0x22, 0x8c, 0x08, 0x65, 0x8d, 0x9d, 0xa9, 0xf2, 0x12, 0x54,
0xd9, 0x71, 0x43, 0x9e, 0x7b, 0xf1, 0x0d, 0x96, 0x12, 0xd4, 0x61, 0x01, 0xa5, 0x6d, 0xbc, 0x48,
0x2d, 0xa8, 0x70, 0x59, 0x80, 0x8f, 0xfb, 0x30, 0x6e, 0xb9, 0x77, 0x66, 0x7c, 0x59, 0x30, 0x8e,
0xf8, 0x18, 0x57, 0x04, 0xb4, 0x30, 0x03, 0x83, 0xbb, 0xe1, 0xfa, 0x99, 0xe0, 0x4a, 0x13, 0x3f,
0xc9, 0x1c, 0x0c, 0x31, 0x12, 0xa3, 0xe9, 0xb8, 0x76, 0x8d, 0x05, 0x88, 0x9d, 0x69, 0x7e, 0xfe,
0x06, 0x77, 0xaa, 0x0c, 0x85, 0xcd, 0x78, 0xa8, 0xc2, 0xdd, 0x30, 0x4a, 0x25, 0x6c, 0x0d, 0xfa,
0xd9, 0xc2, 0x8f, 0x10, 0x72, 0xbf, 0x7a, 0x80, 0xfb, 0xde, 0x88, 0x47, 0xe0, 0xe3, 0xf5, 0xcd,
0x44, 0x85, 0xb8, 0x18, 0xdb, 0x70, 0xff, 0x67, 0x9a, 0xca, 0x8e, 0xdf, 0x18, 0x72, 0x8f, 0xbe,
0x15, 0x9c, 0x89, 0x39, 0x8e, 0x9c, 0x32, 0xcd, 0xc2, 0x1a, 0xec, 0xeb, 0x32, 0xb3, 0x3d, 0x70,
0x3e, 0x26, 0x38, 0x47, 0x3b, 0x66, 0x97, 0xd2, 0x2e, 0x83, 0x94, 0x7b, 0xf3, 0xd1, 0x03, 0xe7,
0xe3, 0x82, 0x53, 0x11, 0x58, 0x39, 0x2d, 0x94, 0xf1, 0x14, 0x0c, 0xe3, 0x4e, 0x7d, 0xdd, 0x76,
0xc4, 0xbe, 0xb7, 0x07, 0xba, 0x27, 0x04, 0xdd, 0x90, 0x00, 0xb2, 0x5d, 0x30, 0xe5, 0xba, 0x0d,
0x12, 0x1b, 0xb8, 0x01, 0xea, 0x81, 0xe2, 0x49, 0x41, 0x31, 0x40, 0xf5, 0x29, 0x74, 0x0a, 0xd2,
0x15, 0x5b, 0x84, 0xe1, 0x70, 0xf8, 0x53, 0x02, 0x9e, 0x92, 0x18, 0x41, 0x51, 0xb7, 0xeb, 0x4d,
0x93, 0xc6, 0xe8, 0x70, 0x8a, 0x2f, 0x4b, 0x0a, 0x89, 0x11, 0x14, 0xbb, 0x30, 0xeb, 0x57, 0x24,
0x85, 0xe3, 0xb3, 0xe7, 0x9d, 0xf4, 0xac, 0xd7, 0xdc, 0xb2, 0xad, 0x5e, 0x3a, 0xf1, 0xb4, 0x60,
0x00, 0x01, 0xa1, 0x04, 0xb7, 0x43, 0xb2, 0xd7, 0x89, 0xf8, 0xaa, 0x80, 0x27, 0x88, 0x9c, 0x01,
0x5c, 0x67, 0x32, 0xc8, 0xd0, 0x6f, 0x2b, 0xe1, 0x14, 0x5f, 0x13, 0x14, 0x19, 0x1f, 0x4c, 0x0c,
0xc3, 0x25, 0x8e, 0x8b, 0x5b, 0xf5, 0x1e, 0x48, 0x9e, 0x95, 0xc3, 0x10, 0x10, 0x61, 0xca, 0x75,
0x62, 0x19, 0x9b, 0xbd, 0x31, 0x3c, 0x27, 0x4d, 0x29, 0x31, 0x94, 0x02, 0x23, 0x4f, 0x4d, 0x6f,
0xe0, 0xe6, 0xda, 0xec, 0x69, 0x3a, 0xbe, 0x2e, 0x38, 0xd2, 0x1e, 0x48, 0x58, 0xa4, 0x69, 0xed,
0x86, 0xe6, 0x79, 0x69, 0x11, 0x1f, 0x4c, 0x2c, 0x3d, 0xdc, 0x99, 0xd2, 0x4a, 0x62, 0x37, 0x6c,
0xdf, 0x90, 0x4b, 0x8f, 0x63, 0x17, 0xfc, 0x8c, 0x38, 0xd3, 0x0e, 0x6e, 0xc1, 0x7b, 0xa1, 0xf9,
0xa6, 0x9c, 0x69, 0x06, 0xa0, 0xe0, 0x33, 0xb0, 0xbf, 0x6b, 0xa8, 0xef, 0x81, 0xec, 0x5b, 0x82,
0x6c, 0x6f, 0x97, 0x70, 0x2f, 0x42, 0xc2, 0x6e, 0x29, 0xbf, 0x2d, 0x43, 0x02, 0x69, 0xe3, 0x5a,
0xa6, 0x65, 0xac, 0xa3, 0x6f, 0xec, 0xce, 0x6a, 0xdf, 0x91, 0x56, 0xe3, 0xd8, 0x80, 0xd5, 0x56,
0x61, 0xaf, 0x60, 0xdc, 0xdd, 0xbc, 0xbe, 0x20, 0x03, 0x2b, 0x47, 0xaf, 0x05, 0x67, 0xf7, 0xc3,
0x30, 0xe6, 0x99, 0x53, 0x56, 0x60, 0x8e, 0x46, 0x0f, 0x06, 0xc2, 0x99, 0x5f, 0x14, 0xcc, 0x32,
0xe2, 0x7b, 0x25, 0x9c, 0xb3, 0xa0, 0xd7, 0x29, 0xf9, 0x69, 0xc8, 0x49, 0xf2, 0xa6, 0x85, 0x05,
0xbe, 0x5d, 0xb1, 0x70, 0x1a, 0xcb, 0x3d, 0x50, 0x7f, 0xb7, 0x6d, 0xaa, 0xd6, 0x7c, 0x70, 0xca,
0x5c, 0x82, 0xac, 0x57, 0x6f, 0x68, 0xd5, 0x5a, 0xdd, 0xc6, 0xd2, 0x72, 0x67, 0xc6, 0xef, 0xc9,
0x99, 0xf2, 0x70, 0x25, 0x06, 0x2b, 0x14, 0x21, 0xc3, 0x1e, 0x7b, 0x75, 0xc9, 0xef, 0x0b, 0xa2,
0xc1, 0x16, 0x4a, 0x04, 0x0e, 0xac, 0x94, 0xb0, 0xe6, 0xed, 0x25, 0xfe, 0xfd, 0x40, 0x06, 0x0e,
0x01, 0xe1, 0xde, 0x37, 0xd4, 0x96, 0x89, 0x95, 0xb0, 0xcf, 0xaf, 0xb9, 0x8f, 0x5e, 0x12, 0x6b,
0x36, 0x98, 0x88, 0x0b, 0xf3, 0xd4, 0x3c, 0xc1, 0x74, 0x19, 0x4e, 0xf6, 0xc0, 0x25, 0xcf, 0x42,
0x81, 0x6c, 0x59, 0x38, 0x09, 0x83, 0x81, 0x54, 0x19, 0x4e, 0xf5, 0xa0, 0xa0, 0x4a, 0xfb, 0x33,
0x65, 0xe1, 0x66, 0x88, 0xd1, 0xb4, 0x17, 0x0e, 0xff, 0x98, 0x80, 0x33, 0xf5, 0xc2, 0xff, 0x43,
0x42, 0xa6, 0xbb, 0x70, 0xe8, 0xc7, 0x05, 0xd4, 0x83, 0x50, 0xb8, 0x4c, 0x75, 0xe1, 0xf0, 0x4f,
0x48, 0xb8, 0x84, 0x50, 0x78, 0xef, 0x26, 0x7c, 0xe9, 0x53, 0x31, 0x11, 0xae, 0xa4, 0xed, 0xe8,
0x37, 0x1f, 0x9e, 0xe3, 0xc2, 0xd1, 0x0f, 0x89, 0x97, 0x4b, 0x44, 0xe1, 0x56, 0x88, 0xf7, 0x68,
0xf0, 0x4f, 0x0b, 0x28, 0xd7, 0xc7, 0x0c, 0x92, 0xf2, 0xe5, 0xb5, 0x70, 0xf8, 0x67, 0x04, 0xdc,
0x8f, 0xa2, 0x5d, 0x17, 0x79, 0x2d, 0x9c, 0xe0, 0xb3, 0xb2, 0xeb, 0x02, 0x41, 0xcd, 0x26, 0x53,
0x5a, 0x38, 0xfa, 0x73, 0xd2, 0xea, 0x12, 0x82, 0xab, 0x29, 0xe9, 0x85, 0xa9, 0x70, 0xfc, 0xe7,
0x05, 0xbe, 0x85, 0xa1, 0x16, 0xf0, 0x85, 0xc9, 0x70, 0x8a, 0x2f, 0x48, 0x0b, 0xf8, 0x50, 0x74,
0x19, 0xb5, 0xa7, 0xbe, 0x70, 0xa6, 0x2f, 0xca, 0x65, 0xd4, 0x96, 0xf9, 0xe8, 0x6c, 0xb2, 0x68,
0x11, 0x4e, 0xf1, 0xb0, 0x9c, 0x4d, 0xa6, 0x4f, 0xbb, 0xd1, 0x9e, 0x4b, 0xc2, 0x39, 0xbe, 0x24,
0xbb, 0xd1, 0x96, 0x4a, 0x30, 0x33, 0x29, 0x9d, 0x79, 0x24, 0x9c, 0xef, 0x11, 0xc1, 0x37, 0xdc,
0x91, 0x46, 0x0a, 0xf7, 0xc0, 0xde, 0xee, 0x39, 0x24, 0x9c, 0xf5, 0xd1, 0x4b, 0x6d, 0x55, 0xbf,
0x3f, 0x85, 0x60, 0xca, 0x1b, 0xed, 0x96, 0x3f, 0xc2, 0x69, 0x1f, 0xbb, 0x14, 0xdc, 0xd8, 0xf9,
0xd3, 0x07, 0x56, 0x68, 0xd0, 0x0a, 0xdd, 0xe1, 0x5c, 0x4f, 0x08, 0x2e, 0x1f, 0x88, 0x2e, 0x0d,
0x11, 0xb9, 0xc3, 0xf1, 0x4f, 0xca, 0xa5, 0x21, 0x10, 0x08, 0x4e, 0x58, 0x4d, 0xd3, 0xa4, 0xce,
0xa1, 0xec, 0xfc, 0x93, 0x86, 0xdc, 0x9f, 0xde, 0x15, 0x0b, 0x43, 0x02, 0x30, 0x86, 0xc6, 0x49,
0x6d, 0x1d, 0x6d, 0x10, 0x82, 0xfc, 0xf3, 0xbb, 0x32, 0x20, 0x50, 0x6d, 0x5c, 0x4f, 0xc0, 0x37,
0x8d, 0xec, 0x0c, 0x3b, 0x04, 0xfb, 0x97, 0x77, 0xc5, 0x67, 0xd6, 0x16, 0xa4, 0x45, 0xc0, 0x3f,
0xda, 0xee, 0x4c, 0xf0, 0x56, 0x90, 0x80, 0x6d, 0x34, 0x6f, 0x83, 0x01, 0xfa, 0xcb, 0x0e, 0x57,
0xaf, 0x84, 0xa1, 0xff, 0x2a, 0xd0, 0x52, 0x9f, 0x1a, 0xac, 0x66, 0x37, 0x08, 0xde, 0x3a, 0x61,
0xd8, 0xbf, 0x09, 0xac, 0x07, 0xa0, 0x60, 0x43, 0x77, 0xdc, 0x5e, 0xc6, 0xfd, 0x77, 0x09, 0x96,
0x00, 0xda, 0x69, 0x7a, 0x7f, 0x8e, 0x6c, 0x85, 0x61, 0xdf, 0x96, 0x9d, 0x16, 0xfa, 0x18, 0x00,
0x93, 0xf4, 0x96, 0xff, 0xf4, 0x20, 0x04, 0xfc, 0x0f, 0x01, 0x6e, 0x21, 0xa6, 0x0f, 0x77, 0x3f,
0xda, 0x81, 0x39, 0x7b, 0xce, 0xe6, 0x87, 0x3a, 0xf0, 0x70, 0x1c, 0xae, 0x41, 0x1d, 0xcc, 0xaf,
0x93, 0x7c, 0x4d, 0x7a, 0x2b, 0x72, 0xd2, 0xe3, 0x91, 0x87, 0x33, 0x9e, 0x60, 0x6c, 0x77, 0xc7,
0x3a, 0xf9, 0x9f, 0x44, 0x21, 0x31, 0x83, 0x60, 0xfd, 0x82, 0xbe, 0xa5, 0xd4, 0x61, 0x84, 0xde,
0xe3, 0xd2, 0x64, 0x07, 0x0c, 0xc2, 0xd1, 0xc5, 0x89, 0xdc, 0xf5, 0x13, 0xad, 0xb7, 0x4a, 0xc4,
0x44, 0x17, 0x75, 0xf6, 0x81, 0x69, 0x3a, 0xfb, 0xca, 0xef, 0xc6, 0xf7, 0x7c, 0xf2, 0xf7, 0xe3,
0x89, 0x85, 0xad, 0x7b, 0xaa, 0xa6, 0x43, 0xcf, 0x6c, 0x8d, 0x4e, 0x5d, 0xe5, 0xc1, 0x08, 0x1c,
0xe8, 0xc2, 0xb1, 0x28, 0x96, 0x83, 0x38, 0xa8, 0xbd, 0xa9, 0xc7, 0x57, 0x4b, 0x18, 0xef, 0x42,
0x3a, 0xf0, 0xfa, 0x03, 0xc6, 0xf6, 0xfa, 0x63, 0x67, 0x20, 0xb7, 0xdd, 0x48, 0xe8, 0x8f, 0xc3,
0x70, 0xbe, 0xc5, 0x0f, 0xc6, 0xe8, 0xad, 0x72, 0xa4, 0xf5, 0x4b, 0x15, 0xfa, 0x83, 0x84, 0x61,
0x5f, 0xef, 0xc4, 0xcb, 0x78, 0x7b, 0xa1, 0xef, 0x44, 0x64, 0x4c, 0x87, 0x43, 0x61, 0x3d, 0xfd,
0x37, 0x5f, 0x91, 0x3f, 0x08, 0xfd, 0x5c, 0x48, 0x7f, 0xde, 0x56, 0xb2, 0xdc, 0x5b, 0x6e, 0x62,
0x54, 0x51, 0x35, 0x5e, 0xa5, 0x0f, 0xd3, 0xf3, 0xaf, 0xbc, 0x76, 0x70, 0xcf, 0x2f, 0xf1, 0xfa,
0x0d, 0x5e, 0xaf, 0xbe, 0x76, 0x30, 0xf2, 0x26, 0x5e, 0x6f, 0xe3, 0xf5, 0x0e, 0x5e, 0xf7, 0xbf,
0x7e, 0x30, 0xf2, 0x1c, 0x5e, 0x2f, 0xe0, 0xf5, 0x23, 0xbc, 0x5e, 0xc2, 0xeb, 0x95, 0xd7, 0x51,
0x1f, 0xaf, 0x57, 0xf1, 0xfe, 0x4d, 0xfc, 0xff, 0x36, 0xfe, 0x7f, 0x07, 0xaf, 0xfb, 0xff, 0x70,
0x70, 0xcf, 0xbf, 0x02, 0x00, 0x00, 0xff, 0xff, 0x76, 0x38, 0x95, 0x63, 0x01, 0x2d, 0x00, 0x00,
}
r := bytes.NewReader(gzipped)
gzipr, err := compress_gzip.NewReader(r)
if err != nil {
panic(err)
}
ungzipped, err := io_ioutil.ReadAll(gzipr)
if err != nil {
panic(err)
}
if err := github_com_gogo_protobuf_proto.Unmarshal(ungzipped, d); err != nil {
panic(err)
}
return d
}
func (this *Castaway) VerboseEqual(that interface{}) error {
if that == nil {
if this == nil {
return nil
}
return fmt.Errorf("that == nil && this != nil")
}
that1, ok := that.(*Castaway)
if !ok {
that2, ok := that.(Castaway)
if ok {
that1 = &that2
} else {
return fmt.Errorf("that is not of type *Castaway")
}
}
if that1 == nil {
if this == nil {
return nil
}
return fmt.Errorf("that is type *Castaway but is nil && this != nil")
} else if this == nil {
return fmt.Errorf("that is type *Castaway but is not nil && this == nil")
}
if len(this.CastMapValueMessage) != len(that1.CastMapValueMessage) {
return fmt.Errorf("CastMapValueMessage this(%v) Not Equal that(%v)", len(this.CastMapValueMessage), len(that1.CastMapValueMessage))
}
for i := range this.CastMapValueMessage {
a := (Wilson)(this.CastMapValueMessage[i])
b := (Wilson)(that1.CastMapValueMessage[i])
if !(&a).Equal(&b) {
return fmt.Errorf("CastMapValueMessage this[%v](%v) Not Equal that[%v](%v)", i, this.CastMapValueMessage[i], i, that1.CastMapValueMessage[i])
}
}
if len(this.CastMapValueMessageNullable) != len(that1.CastMapValueMessageNullable) {
return fmt.Errorf("CastMapValueMessageNullable this(%v) Not Equal that(%v)", len(this.CastMapValueMessageNullable), len(that1.CastMapValueMessageNullable))
}
for i := range this.CastMapValueMessageNullable {
a := (*Wilson)(this.CastMapValueMessageNullable[i])
b := (*Wilson)(that1.CastMapValueMessageNullable[i])
if !a.Equal(b) {
return fmt.Errorf("CastMapValueMessageNullable this[%v](%v) Not Equal that[%v](%v)", i, this.CastMapValueMessageNullable[i], i, that1.CastMapValueMessageNullable[i])
}
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
}
return nil
}
func (this *Castaway) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*Castaway)
if !ok {
that2, ok := that.(Castaway)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if len(this.CastMapValueMessage) != len(that1.CastMapValueMessage) {
return false
}
for i := range this.CastMapValueMessage {
a := (Wilson)(this.CastMapValueMessage[i])
b := (Wilson)(that1.CastMapValueMessage[i])
if !(&a).Equal(&b) {
return false
}
}
if len(this.CastMapValueMessageNullable) != len(that1.CastMapValueMessageNullable) {
return false
}
for i := range this.CastMapValueMessageNullable {
a := (*Wilson)(this.CastMapValueMessageNullable[i])
b := (*Wilson)(that1.CastMapValueMessageNullable[i])
if !a.Equal(b) {
return false
}
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
func (this *Wilson) VerboseEqual(that interface{}) error {
if that == nil {
if this == nil {
return nil
}
return fmt.Errorf("that == nil && this != nil")
}
that1, ok := that.(*Wilson)
if !ok {
that2, ok := that.(Wilson)
if ok {
that1 = &that2
} else {
return fmt.Errorf("that is not of type *Wilson")
}
}
if that1 == nil {
if this == nil {
return nil
}
return fmt.Errorf("that is type *Wilson but is nil && this != nil")
} else if this == nil {
return fmt.Errorf("that is type *Wilson but is not nil && this == nil")
}
if this.Int64 != nil && that1.Int64 != nil {
if *this.Int64 != *that1.Int64 {
return fmt.Errorf("Int64 this(%v) Not Equal that(%v)", *this.Int64, *that1.Int64)
}
} else if this.Int64 != nil {
return fmt.Errorf("this.Int64 == nil && that.Int64 != nil")
} else if that1.Int64 != nil {
return fmt.Errorf("Int64 this(%v) Not Equal that(%v)", this.Int64, that1.Int64)
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
}
return nil
}
func (this *Wilson) Equal(that interface{}) bool {
if that == nil {
if this == nil {
return true
}
return false
}
that1, ok := that.(*Wilson)
if !ok {
that2, ok := that.(Wilson)
if ok {
that1 = &that2
} else {
return false
}
}
if that1 == nil {
if this == nil {
return true
}
return false
} else if this == nil {
return false
}
if this.Int64 != nil && that1.Int64 != nil {
if *this.Int64 != *that1.Int64 {
return false
}
} else if this.Int64 != nil {
return false
} else if that1.Int64 != nil {
return false
}
if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
return false
}
return true
}
type CastawayFace interface {
Proto() github_com_gogo_protobuf_proto.Message
GetCastMapValueMessage() map[int32]MyWilson
GetCastMapValueMessageNullable() map[int32]*MyWilson
}
func (this *Castaway) Proto() github_com_gogo_protobuf_proto.Message {
return this
}
func (this *Castaway) TestProto() github_com_gogo_protobuf_proto.Message {
return NewCastawayFromFace(this)
}
func (this *Castaway) GetCastMapValueMessage() map[int32]MyWilson {
return this.CastMapValueMessage
}
func (this *Castaway) GetCastMapValueMessageNullable() map[int32]*MyWilson {
return this.CastMapValueMessageNullable
}
func NewCastawayFromFace(that CastawayFace) *Castaway {
this := &Castaway{}
this.CastMapValueMessage = that.GetCastMapValueMessage()
this.CastMapValueMessageNullable = that.GetCastMapValueMessageNullable()
return this
}
type WilsonFace interface {
Proto() github_com_gogo_protobuf_proto.Message
GetInt64() *int64
}
func (this *Wilson) Proto() github_com_gogo_protobuf_proto.Message {
return this
}
func (this *Wilson) TestProto() github_com_gogo_protobuf_proto.Message {
return NewWilsonFromFace(this)
}
func (this *Wilson) GetInt64() *int64 {
return this.Int64
}
func NewWilsonFromFace(that WilsonFace) *Wilson {
this := &Wilson{}
this.Int64 = that.GetInt64()
return this
}
func (this *Castaway) GoString() string {
if this == nil {
return "nil"
}
s := make([]string, 0, 6)
s = append(s, "&castvalue.Castaway{")
keysForCastMapValueMessage := make([]int32, 0, len(this.CastMapValueMessage))
for k := range this.CastMapValueMessage {
keysForCastMapValueMessage = append(keysForCastMapValueMessage, k)
}
github_com_gogo_protobuf_sortkeys.Int32s(keysForCastMapValueMessage)
mapStringForCastMapValueMessage := "map[int32]MyWilson{"
for _, k := range keysForCastMapValueMessage {
mapStringForCastMapValueMessage += fmt.Sprintf("%#v: %#v,", k, this.CastMapValueMessage[k])
}
mapStringForCastMapValueMessage += "}"
if this.CastMapValueMessage != nil {
s = append(s, "CastMapValueMessage: "+mapStringForCastMapValueMessage+",\n")
}
keysForCastMapValueMessageNullable := make([]int32, 0, len(this.CastMapValueMessageNullable))
for k := range this.CastMapValueMessageNullable {
keysForCastMapValueMessageNullable = append(keysForCastMapValueMessageNullable, k)
}
github_com_gogo_protobuf_sortkeys.Int32s(keysForCastMapValueMessageNullable)
mapStringForCastMapValueMessageNullable := "map[int32]*MyWilson{"
for _, k := range keysForCastMapValueMessageNullable {
mapStringForCastMapValueMessageNullable += fmt.Sprintf("%#v: %#v,", k, this.CastMapValueMessageNullable[k])
}
mapStringForCastMapValueMessageNullable += "}"
if this.CastMapValueMessageNullable != nil {
s = append(s, "CastMapValueMessageNullable: "+mapStringForCastMapValueMessageNullable+",\n")
}
if this.XXX_unrecognized != nil {
s = append(s, "XXX_unrecognized:"+fmt.Sprintf("%#v", this.XXX_unrecognized)+",\n")
}
s = append(s, "}")
return strings.Join(s, "")
}
func (this *Wilson) GoString() string {
if this == nil {
return "nil"
}
s := make([]string, 0, 5)
s = append(s, "&castvalue.Wilson{")
if this.Int64 != nil {
s = append(s, "Int64: "+valueToGoStringCastvalue(this.Int64, "int64")+",\n")
}
if this.XXX_unrecognized != nil {
s = append(s, "XXX_unrecognized:"+fmt.Sprintf("%#v", this.XXX_unrecognized)+",\n")
}
s = append(s, "}")
return strings.Join(s, "")
}
func valueToGoStringCastvalue(v interface{}, typ string) string {
rv := reflect.ValueOf(v)
if rv.IsNil() {
return "nil"
}
pv := reflect.Indirect(rv).Interface()
return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv)
}
func extensionToGoStringCastvalue(e map[int32]github_com_gogo_protobuf_proto.Extension) string {
if e == nil {
return "nil"
}
s := "map[int32]proto.Extension{"
keys := make([]int, 0, len(e))
for k := range e {
keys = append(keys, int(k))
}
sort.Ints(keys)
ss := []string{}
for _, k := range keys {
ss = append(ss, strconv.Itoa(k)+": "+e[int32(k)].GoString())
}
s += strings.Join(ss, ",") + "}"
return s
}
func NewPopulatedCastaway(r randyCastvalue, easy bool) *Castaway {
this := &Castaway{}
if r.Intn(10) != 0 {
v1 := r.Intn(10)
this.CastMapValueMessage = make(map[int32]MyWilson)
for i := 0; i < v1; i++ {
this.CastMapValueMessage[int32(r.Int31())] = (MyWilson)(*NewPopulatedWilson(r, easy))
}
}
if r.Intn(10) != 0 {
v2 := r.Intn(10)
this.CastMapValueMessageNullable = make(map[int32]*MyWilson)
for i := 0; i < v2; i++ {
this.CastMapValueMessageNullable[int32(r.Int31())] = (*MyWilson)(NewPopulatedWilson(r, easy))
}
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedCastvalue(r, 3)
}
return this
}
func NewPopulatedWilson(r randyCastvalue, easy bool) *Wilson {
this := &Wilson{}
if r.Intn(10) != 0 {
v3 := int64(r.Int63())
if r.Intn(2) == 0 {
v3 *= -1
}
this.Int64 = &v3
}
if !easy && r.Intn(10) != 0 {
this.XXX_unrecognized = randUnrecognizedCastvalue(r, 2)
}
return this
}
type randyCastvalue interface {
Float32() float32
Float64() float64
Int63() int64
Int31() int32
Uint32() uint32
Intn(n int) int
}
func randUTF8RuneCastvalue(r randyCastvalue) rune {
ru := r.Intn(62)
if ru < 10 {
return rune(ru + 48)
} else if ru < 36 {
return rune(ru + 55)
}
return rune(ru + 61)
}
func randStringCastvalue(r randyCastvalue) string {
v4 := r.Intn(100)
tmps := make([]rune, v4)
for i := 0; i < v4; i++ {
tmps[i] = randUTF8RuneCastvalue(r)
}
return string(tmps)
}
func randUnrecognizedCastvalue(r randyCastvalue, maxFieldNumber int) (data []byte) {
l := r.Intn(5)
for i := 0; i < l; i++ {
wire := r.Intn(4)
if wire == 3 {
wire = 5
}
fieldNumber := maxFieldNumber + r.Intn(100)
data = randFieldCastvalue(data, r, fieldNumber, wire)
}
return data
}
func randFieldCastvalue(data []byte, r randyCastvalue, fieldNumber int, wire int) []byte {
key := uint32(fieldNumber)<<3 | uint32(wire)
switch wire {
case 0:
data = encodeVarintPopulateCastvalue(data, uint64(key))
v5 := r.Int63()
if r.Intn(2) == 0 {
v5 *= -1
}
data = encodeVarintPopulateCastvalue(data, uint64(v5))
case 1:
data = encodeVarintPopulateCastvalue(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
case 2:
data = encodeVarintPopulateCastvalue(data, uint64(key))
ll := r.Intn(100)
data = encodeVarintPopulateCastvalue(data, uint64(ll))
for j := 0; j < ll; j++ {
data = append(data, byte(r.Intn(256)))
}
default:
data = encodeVarintPopulateCastvalue(data, uint64(key))
data = append(data, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
}
return data
}
func encodeVarintPopulateCastvalue(data []byte, v uint64) []byte {
for v >= 1<<7 {
data = append(data, uint8(uint64(v)&0x7f|0x80))
v >>= 7
}
data = append(data, uint8(v))
return data
}
func (m *Castaway) Size() (n int) {
var l int
_ = l
if len(m.CastMapValueMessage) > 0 {
for k, v := range m.CastMapValueMessage {
_ = k
_ = v
l = ((*Wilson)(&v)).Size()
mapEntrySize := 1 + sovCastvalue(uint64(k)) + 1 + l + sovCastvalue(uint64(l))
n += mapEntrySize + 1 + sovCastvalue(uint64(mapEntrySize))
}
}
if len(m.CastMapValueMessageNullable) > 0 {
for k, v := range m.CastMapValueMessageNullable {
_ = k
_ = v
l = 0
if v != nil {
l = ((*Wilson)(v)).Size()
}
mapEntrySize := 1 + sovCastvalue(uint64(k)) + 1 + l + sovCastvalue(uint64(l))
n += mapEntrySize + 1 + sovCastvalue(uint64(mapEntrySize))
}
}
if m.XXX_unrecognized != nil {
n += len(m.XXX_unrecognized)
}
return n
}
func (m *Wilson) Size() (n int) {
var l int
_ = l
if m.Int64 != nil {
n += 1 + sovCastvalue(uint64(*m.Int64))
}
if m.XXX_unrecognized != nil {
n += len(m.XXX_unrecognized)
}
return n
}
func sovCastvalue(x uint64) (n int) {
for {
n++
x >>= 7
if x == 0 {
break
}
}
return n
}
func sozCastvalue(x uint64) (n int) {
return sovCastvalue(uint64((x << 1) ^ uint64((int64(x) >> 63))))
}
func (this *Castaway) String() string {
if this == nil {
return "nil"
}
keysForCastMapValueMessage := make([]int32, 0, len(this.CastMapValueMessage))
for k := range this.CastMapValueMessage {
keysForCastMapValueMessage = append(keysForCastMapValueMessage, k)
}
github_com_gogo_protobuf_sortkeys.Int32s(keysForCastMapValueMessage)
mapStringForCastMapValueMessage := "map[int32]MyWilson{"
for _, k := range keysForCastMapValueMessage {
mapStringForCastMapValueMessage += fmt.Sprintf("%v: %v,", k, this.CastMapValueMessage[k])
}
mapStringForCastMapValueMessage += "}"
keysForCastMapValueMessageNullable := make([]int32, 0, len(this.CastMapValueMessageNullable))
for k := range this.CastMapValueMessageNullable {
keysForCastMapValueMessageNullable = append(keysForCastMapValueMessageNullable, k)
}
github_com_gogo_protobuf_sortkeys.Int32s(keysForCastMapValueMessageNullable)
mapStringForCastMapValueMessageNullable := "map[int32]*MyWilson{"
for _, k := range keysForCastMapValueMessageNullable {
mapStringForCastMapValueMessageNullable += fmt.Sprintf("%v: %v,", k, this.CastMapValueMessageNullable[k])
}
mapStringForCastMapValueMessageNullable += "}"
s := strings.Join([]string{`&Castaway{`,
`CastMapValueMessage:` + mapStringForCastMapValueMessage + `,`,
`CastMapValueMessageNullable:` + mapStringForCastMapValueMessageNullable + `,`,
`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
`}`,
}, "")
return s
}
func (this *Wilson) String() string {
if this == nil {
return "nil"
}
s := strings.Join([]string{`&Wilson{`,
`Int64:` + valueToStringCastvalue(this.Int64) + `,`,
`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
`}`,
}, "")
return s
}
func valueToStringCastvalue(v interface{}) string {
rv := reflect.ValueOf(v)
if rv.IsNil() {
return "nil"
}
pv := reflect.Indirect(rv).Interface()
return fmt.Sprintf("*%v", pv)
}
func (m *Castaway) Marshal() (data []byte, err error) {
size := m.Size()
data = make([]byte, size)
n, err := m.MarshalTo(data)
if err != nil {
return nil, err
}
return data[:n], nil
}
func (m *Castaway) MarshalTo(data []byte) (int, error) {
var i int
_ = i
var l int
_ = l
if len(m.CastMapValueMessage) > 0 {
for k := range m.CastMapValueMessage {
data[i] = 0xa
i++
v := m.CastMapValueMessage[k]
msgSize := ((*Wilson)(&v)).Size()
mapSize := 1 + sovCastvalue(uint64(k)) + 1 + msgSize + sovCastvalue(uint64(msgSize))
i = encodeVarintCastvalue(data, i, uint64(mapSize))
data[i] = 0x8
i++
i = encodeVarintCastvalue(data, i, uint64(k))
data[i] = 0x12
i++
i = encodeVarintCastvalue(data, i, uint64(((*Wilson)(&v)).Size()))
n1, err := ((*Wilson)(&v)).MarshalTo(data[i:])
if err != nil {
return 0, err
}
i += n1
}
}
if len(m.CastMapValueMessageNullable) > 0 {
for k := range m.CastMapValueMessageNullable {
data[i] = 0x12
i++
v := m.CastMapValueMessageNullable[k]
if v == nil {
return 0, errors.New("proto: map has nil element")
}
msgSize := ((*Wilson)(v)).Size()
mapSize := 1 + sovCastvalue(uint64(k)) + 1 + msgSize + sovCastvalue(uint64(msgSize))
i = encodeVarintCastvalue(data, i, uint64(mapSize))
data[i] = 0x8
i++
i = encodeVarintCastvalue(data, i, uint64(k))
data[i] = 0x12
i++
i = encodeVarintCastvalue(data, i, uint64(((*Wilson)(v)).Size()))
n2, err := ((*Wilson)(v)).MarshalTo(data[i:])
if err != nil {
return 0, err
}
i += n2
}
}
if m.XXX_unrecognized != nil {
i += copy(data[i:], m.XXX_unrecognized)
}
return i, nil
}
func (m *Wilson) Marshal() (data []byte, err error) {
size := m.Size()
data = make([]byte, size)
n, err := m.MarshalTo(data)
if err != nil {
return nil, err
}
return data[:n], nil
}
func (m *Wilson) MarshalTo(data []byte) (int, error) {
var i int
_ = i
var l int
_ = l
if m.Int64 != nil {
data[i] = 0x8
i++
i = encodeVarintCastvalue(data, i, uint64(*m.Int64))
}
if m.XXX_unrecognized != nil {
i += copy(data[i:], m.XXX_unrecognized)
}
return i, nil
}
func encodeFixed64Castvalue(data []byte, offset int, v uint64) int {
data[offset] = uint8(v)
data[offset+1] = uint8(v >> 8)
data[offset+2] = uint8(v >> 16)
data[offset+3] = uint8(v >> 24)
data[offset+4] = uint8(v >> 32)
data[offset+5] = uint8(v >> 40)
data[offset+6] = uint8(v >> 48)
data[offset+7] = uint8(v >> 56)
return offset + 8
}
func encodeFixed32Castvalue(data []byte, offset int, v uint32) int {
data[offset] = uint8(v)
data[offset+1] = uint8(v >> 8)
data[offset+2] = uint8(v >> 16)
data[offset+3] = uint8(v >> 24)
return offset + 4
}
func encodeVarintCastvalue(data []byte, offset int, v uint64) int {
for v >= 1<<7 {
data[offset] = uint8(v&0x7f | 0x80)
v >>= 7
offset++
}
data[offset] = uint8(v)
return offset + 1
}
var fileDescriptorCastvalue = []byte{
// 343 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0x52, 0x4b, 0xce, 0xcf, 0x4d,
0xca, 0x2f, 0xd6, 0x2f, 0xcd, 0x2b, 0x4e, 0x4c, 0x4b, 0xcd, 0x4d, 0x2c, 0x2a, 0xce, 0x48, 0xcc,
0x49, 0x2d, 0xd2, 0x4f, 0x4e, 0x2c, 0x2e, 0x29, 0x4b, 0xcc, 0x29, 0x4d, 0xd5, 0x2b, 0x28, 0xca,
0x2f, 0xc9, 0x17, 0xe2, 0x84, 0x0b, 0x48, 0xe9, 0xa6, 0x67, 0x96, 0x64, 0x94, 0x26, 0xe9, 0x01,
0x75, 0xea, 0xa7, 0xe7, 0xa7, 0xe7, 0xeb, 0x83, 0x55, 0x24, 0x95, 0xa6, 0x81, 0x79, 0x60, 0x0e,
0x98, 0x05, 0xd1, 0xa9, 0x74, 0x90, 0x99, 0x8b, 0xc3, 0x19, 0xa8, 0x39, 0xb1, 0x3c, 0xb1, 0x52,
0xa8, 0x80, 0x4b, 0x18, 0xc4, 0xf6, 0x4d, 0x2c, 0x08, 0x03, 0x99, 0xe5, 0x9b, 0x5a, 0x5c, 0x9c,
0x98, 0x9e, 0x2a, 0xc1, 0xa8, 0xc0, 0xac, 0xc1, 0x6d, 0xa4, 0xa3, 0x87, 0xb0, 0x15, 0xa6, 0x43,
0x0f, 0x8b, 0x72, 0xd7, 0xbc, 0x92, 0xa2, 0x4a, 0x27, 0x81, 0x13, 0xf7, 0xe4, 0x19, 0xba, 0xee,
0xcb, 0x73, 0xf8, 0x56, 0x86, 0x67, 0xe6, 0x14, 0xe7, 0xe7, 0x05, 0x09, 0x27, 0x63, 0xaa, 0x15,
0x6a, 0x61, 0xe4, 0x92, 0xc6, 0x62, 0x86, 0x5f, 0x69, 0x4e, 0x4e, 0x62, 0x52, 0x4e, 0xaa, 0x04,
0x13, 0xd8, 0x6a, 0x13, 0x22, 0xad, 0x86, 0x69, 0x83, 0x38, 0x81, 0x07, 0xc5, 0x7a, 0xe9, 0x64,
0xdc, 0xea, 0xa5, 0x22, 0xb9, 0x24, 0x70, 0xf9, 0x44, 0x48, 0x80, 0x8b, 0x39, 0x3b, 0xb5, 0x12,
0x18, 0x08, 0x8c, 0x1a, 0xac, 0x41, 0x20, 0xa6, 0x90, 0x3a, 0x17, 0x2b, 0xd8, 0x2d, 0x40, 0xd7,
0x31, 0x02, 0x5d, 0x27, 0x88, 0xe4, 0x3a, 0xa8, 0x65, 0x10, 0x79, 0x2b, 0x26, 0x0b, 0x46, 0xa9,
0x44, 0x2e, 0x05, 0x42, 0x2e, 0xa5, 0xd0, 0x0a, 0x25, 0x39, 0x2e, 0x36, 0x88, 0xa0, 0x90, 0x08,
0x17, 0xab, 0x67, 0x5e, 0x89, 0x99, 0x09, 0xd8, 0x28, 0xe6, 0x20, 0xd6, 0x4c, 0x10, 0xc7, 0xc9,
0xe7, 0xc4, 0x43, 0x39, 0x86, 0x0b, 0x40, 0x7c, 0x03, 0x88, 0x1f, 0x3c, 0x94, 0x63, 0x7c, 0x01,
0xc4, 0x1f, 0x80, 0xf8, 0x07, 0x10, 0x37, 0x3c, 0x92, 0x63, 0x5c, 0x01, 0xc4, 0x1b, 0x80, 0x78,
0x07, 0x10, 0x1f, 0x00, 0xe2, 0x13, 0x8f, 0x80, 0xea, 0x81, 0xf8, 0x01, 0x90, 0xfd, 0x02, 0x48,
0x7f, 0x00, 0xd2, 0x3f, 0x80, 0xb8, 0xe1, 0xb1, 0x1c, 0x03, 0x20, 0x00, 0x00, 0xff, 0xff, 0x29,
0x83, 0xc1, 0xb7, 0x94, 0x02, 0x00, 0x00,
}

View File

@@ -0,0 +1,31 @@
// Extensions for Protocol Buffers to create more go like structures.
//
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package castvalue
type MyWilson Wilson

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,31 @@
// Extensions for Protocol Buffers to create more go like structures.
//
// Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
// http://github.com/gogo/protobuf/gogoproto
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package castvalue
type MyWilson Wilson