github.com/inklabsfoundation/inkchain@v0.17.1-0.20181025012015-c3cef8062f19/protos/peer/chaincode.pb.go (about)

     1  // Code generated by protoc-gen-go. DO NOT EDIT.
     2  // source: peer/chaincode.proto
     3  
     4  package peer
     5  
     6  import proto "github.com/golang/protobuf/proto"
     7  import fmt "fmt"
     8  import math "math"
     9  import google_protobuf1 "github.com/golang/protobuf/ptypes/timestamp"
    10  
    11  // Reference imports to suppress errors if they are not otherwise used.
    12  var _ = proto.Marshal
    13  var _ = fmt.Errorf
    14  var _ = math.Inf
    15  
    16  // Confidentiality Levels
    17  type ConfidentialityLevel int32
    18  
    19  const (
    20  	ConfidentialityLevel_PUBLIC       ConfidentialityLevel = 0
    21  	ConfidentialityLevel_CONFIDENTIAL ConfidentialityLevel = 1
    22  )
    23  
    24  var ConfidentialityLevel_name = map[int32]string{
    25  	0: "PUBLIC",
    26  	1: "CONFIDENTIAL",
    27  }
    28  var ConfidentialityLevel_value = map[string]int32{
    29  	"PUBLIC":       0,
    30  	"CONFIDENTIAL": 1,
    31  }
    32  
    33  func (x ConfidentialityLevel) String() string {
    34  	return proto.EnumName(ConfidentialityLevel_name, int32(x))
    35  }
    36  func (ConfidentialityLevel) EnumDescriptor() ([]byte, []int) { return fileDescriptor1, []int{0} }
    37  
    38  type ChaincodeSpec_Type int32
    39  
    40  const (
    41  	ChaincodeSpec_UNDEFINED ChaincodeSpec_Type = 0
    42  	ChaincodeSpec_GOLANG    ChaincodeSpec_Type = 1
    43  	ChaincodeSpec_NODE      ChaincodeSpec_Type = 2
    44  	ChaincodeSpec_CAR       ChaincodeSpec_Type = 3
    45  	ChaincodeSpec_JAVA      ChaincodeSpec_Type = 4
    46  )
    47  
    48  var ChaincodeSpec_Type_name = map[int32]string{
    49  	0: "UNDEFINED",
    50  	1: "GOLANG",
    51  	2: "NODE",
    52  	3: "CAR",
    53  	4: "JAVA",
    54  }
    55  var ChaincodeSpec_Type_value = map[string]int32{
    56  	"UNDEFINED": 0,
    57  	"GOLANG":    1,
    58  	"NODE":      2,
    59  	"CAR":       3,
    60  	"JAVA":      4,
    61  }
    62  
    63  func (x ChaincodeSpec_Type) String() string {
    64  	return proto.EnumName(ChaincodeSpec_Type_name, int32(x))
    65  }
    66  func (ChaincodeSpec_Type) EnumDescriptor() ([]byte, []int) { return fileDescriptor1, []int{2, 0} }
    67  
    68  type ChaincodeDeploymentSpec_ExecutionEnvironment int32
    69  
    70  const (
    71  	ChaincodeDeploymentSpec_DOCKER ChaincodeDeploymentSpec_ExecutionEnvironment = 0
    72  	ChaincodeDeploymentSpec_SYSTEM ChaincodeDeploymentSpec_ExecutionEnvironment = 1
    73  )
    74  
    75  var ChaincodeDeploymentSpec_ExecutionEnvironment_name = map[int32]string{
    76  	0: "DOCKER",
    77  	1: "SYSTEM",
    78  }
    79  var ChaincodeDeploymentSpec_ExecutionEnvironment_value = map[string]int32{
    80  	"DOCKER": 0,
    81  	"SYSTEM": 1,
    82  }
    83  
    84  func (x ChaincodeDeploymentSpec_ExecutionEnvironment) String() string {
    85  	return proto.EnumName(ChaincodeDeploymentSpec_ExecutionEnvironment_name, int32(x))
    86  }
    87  func (ChaincodeDeploymentSpec_ExecutionEnvironment) EnumDescriptor() ([]byte, []int) {
    88  	return fileDescriptor1, []int{5, 0}
    89  }
    90  
    91  // ChaincodeID contains the path as specified by the deploy transaction
    92  // that created it as well as the hashCode that is generated by the
    93  // system for the path. From the user level (ie, CLI, REST API and so on)
    94  // deploy transaction is expected to provide the path and other requests
    95  // are expected to provide the hashCode. The other value will be ignored.
    96  // Internally, the structure could contain both values. For instance, the
    97  // hashCode will be set when first generated using the path
    98  type ChaincodeID struct {
    99  	// deploy transaction will use the path
   100  	Path string `protobuf:"bytes,1,opt,name=path" json:"path,omitempty"`
   101  	// all other requests will use the name (really a hashcode) generated by
   102  	// the deploy transaction
   103  	Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"`
   104  	// user friendly version name for the chaincode
   105  	Version string `protobuf:"bytes,3,opt,name=version" json:"version,omitempty"`
   106  }
   107  
   108  func (m *ChaincodeID) Reset()                    { *m = ChaincodeID{} }
   109  func (m *ChaincodeID) String() string            { return proto.CompactTextString(m) }
   110  func (*ChaincodeID) ProtoMessage()               {}
   111  func (*ChaincodeID) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{0} }
   112  
   113  func (m *ChaincodeID) GetPath() string {
   114  	if m != nil {
   115  		return m.Path
   116  	}
   117  	return ""
   118  }
   119  
   120  func (m *ChaincodeID) GetName() string {
   121  	if m != nil {
   122  		return m.Name
   123  	}
   124  	return ""
   125  }
   126  
   127  func (m *ChaincodeID) GetVersion() string {
   128  	if m != nil {
   129  		return m.Version
   130  	}
   131  	return ""
   132  }
   133  
   134  // Carries the chaincode function and its arguments.
   135  // UnmarshalJSON in transaction.go converts the string-based REST/JSON input to
   136  // the []byte-based current ChaincodeInput structure.
   137  type ChaincodeInput struct {
   138  	Args [][]byte `protobuf:"bytes,1,rep,name=args,proto3" json:"args,omitempty"`
   139  }
   140  
   141  func (m *ChaincodeInput) Reset()                    { *m = ChaincodeInput{} }
   142  func (m *ChaincodeInput) String() string            { return proto.CompactTextString(m) }
   143  func (*ChaincodeInput) ProtoMessage()               {}
   144  func (*ChaincodeInput) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{1} }
   145  
   146  func (m *ChaincodeInput) GetArgs() [][]byte {
   147  	if m != nil {
   148  		return m.Args
   149  	}
   150  	return nil
   151  }
   152  
   153  // Carries the chaincode specification. This is the actual metadata required for
   154  // defining a chaincode.
   155  type ChaincodeSpec struct {
   156  	Type        ChaincodeSpec_Type `protobuf:"varint,1,opt,name=type,enum=protos.ChaincodeSpec_Type" json:"type,omitempty"`
   157  	ChaincodeId *ChaincodeID       `protobuf:"bytes,2,opt,name=chaincode_id,json=chaincodeId" json:"chaincode_id,omitempty"`
   158  	Input       *ChaincodeInput    `protobuf:"bytes,3,opt,name=input" json:"input,omitempty"`
   159  	Timeout     int32              `protobuf:"varint,4,opt,name=timeout" json:"timeout,omitempty"`
   160  }
   161  
   162  func (m *ChaincodeSpec) Reset()                    { *m = ChaincodeSpec{} }
   163  func (m *ChaincodeSpec) String() string            { return proto.CompactTextString(m) }
   164  func (*ChaincodeSpec) ProtoMessage()               {}
   165  func (*ChaincodeSpec) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{2} }
   166  
   167  func (m *ChaincodeSpec) GetType() ChaincodeSpec_Type {
   168  	if m != nil {
   169  		return m.Type
   170  	}
   171  	return ChaincodeSpec_UNDEFINED
   172  }
   173  
   174  func (m *ChaincodeSpec) GetChaincodeId() *ChaincodeID {
   175  	if m != nil {
   176  		return m.ChaincodeId
   177  	}
   178  	return nil
   179  }
   180  
   181  func (m *ChaincodeSpec) GetInput() *ChaincodeInput {
   182  	if m != nil {
   183  		return m.Input
   184  	}
   185  	return nil
   186  }
   187  
   188  func (m *ChaincodeSpec) GetTimeout() int32 {
   189  	if m != nil {
   190  		return m.Timeout
   191  	}
   192  	return 0
   193  }
   194  
   195  type SenderSpec struct {
   196  	Sender   []byte `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"`
   197  	Counter  uint64 `protobuf:"varint,2,opt,name=counter" json:"counter,omitempty"`
   198  	FeeLimit []byte `protobuf:"bytes,3,opt,name=fee_limit,json=feeLimit,proto3" json:"fee_limit,omitempty"`
   199  	Msg      []byte `protobuf:"bytes,4,opt,name=msg,proto3" json:"msg,omitempty"`
   200  }
   201  
   202  func (m *SenderSpec) Reset()                    { *m = SenderSpec{} }
   203  func (m *SenderSpec) String() string            { return proto.CompactTextString(m) }
   204  func (*SenderSpec) ProtoMessage()               {}
   205  func (*SenderSpec) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{3} }
   206  
   207  func (m *SenderSpec) GetSender() []byte {
   208  	if m != nil {
   209  		return m.Sender
   210  	}
   211  	return nil
   212  }
   213  
   214  func (m *SenderSpec) GetCounter() uint64 {
   215  	if m != nil {
   216  		return m.Counter
   217  	}
   218  	return 0
   219  }
   220  
   221  func (m *SenderSpec) GetFeeLimit() []byte {
   222  	if m != nil {
   223  		return m.FeeLimit
   224  	}
   225  	return nil
   226  }
   227  
   228  func (m *SenderSpec) GetMsg() []byte {
   229  	if m != nil {
   230  		return m.Msg
   231  	}
   232  	return nil
   233  }
   234  
   235  type SignContent struct {
   236  	ChaincodeSpec   *ChaincodeSpec `protobuf:"bytes,1,opt,name=chaincode_spec,json=chaincodeSpec" json:"chaincode_spec,omitempty"`
   237  	IdGenerationAlg string         `protobuf:"bytes,2,opt,name=id_generation_alg,json=idGenerationAlg" json:"id_generation_alg,omitempty"`
   238  	SenderSpec      *SenderSpec    `protobuf:"bytes,3,opt,name=sender_spec,json=senderSpec" json:"sender_spec,omitempty"`
   239  }
   240  
   241  func (m *SignContent) Reset()                    { *m = SignContent{} }
   242  func (m *SignContent) String() string            { return proto.CompactTextString(m) }
   243  func (*SignContent) ProtoMessage()               {}
   244  func (*SignContent) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{4} }
   245  
   246  func (m *SignContent) GetChaincodeSpec() *ChaincodeSpec {
   247  	if m != nil {
   248  		return m.ChaincodeSpec
   249  	}
   250  	return nil
   251  }
   252  
   253  func (m *SignContent) GetIdGenerationAlg() string {
   254  	if m != nil {
   255  		return m.IdGenerationAlg
   256  	}
   257  	return ""
   258  }
   259  
   260  func (m *SignContent) GetSenderSpec() *SenderSpec {
   261  	if m != nil {
   262  		return m.SenderSpec
   263  	}
   264  	return nil
   265  }
   266  
   267  // Specify the deployment of a chaincode.
   268  // TODO: Define `codePackage`.
   269  type ChaincodeDeploymentSpec struct {
   270  	ChaincodeSpec *ChaincodeSpec `protobuf:"bytes,1,opt,name=chaincode_spec,json=chaincodeSpec" json:"chaincode_spec,omitempty"`
   271  	// Controls when the chaincode becomes executable.
   272  	EffectiveDate *google_protobuf1.Timestamp                  `protobuf:"bytes,2,opt,name=effective_date,json=effectiveDate" json:"effective_date,omitempty"`
   273  	CodePackage   []byte                                       `protobuf:"bytes,3,opt,name=code_package,json=codePackage,proto3" json:"code_package,omitempty"`
   274  	ExecEnv       ChaincodeDeploymentSpec_ExecutionEnvironment `protobuf:"varint,4,opt,name=exec_env,json=execEnv,enum=protos.ChaincodeDeploymentSpec_ExecutionEnvironment" json:"exec_env,omitempty"`
   275  }
   276  
   277  func (m *ChaincodeDeploymentSpec) Reset()                    { *m = ChaincodeDeploymentSpec{} }
   278  func (m *ChaincodeDeploymentSpec) String() string            { return proto.CompactTextString(m) }
   279  func (*ChaincodeDeploymentSpec) ProtoMessage()               {}
   280  func (*ChaincodeDeploymentSpec) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{5} }
   281  
   282  func (m *ChaincodeDeploymentSpec) GetChaincodeSpec() *ChaincodeSpec {
   283  	if m != nil {
   284  		return m.ChaincodeSpec
   285  	}
   286  	return nil
   287  }
   288  
   289  func (m *ChaincodeDeploymentSpec) GetEffectiveDate() *google_protobuf1.Timestamp {
   290  	if m != nil {
   291  		return m.EffectiveDate
   292  	}
   293  	return nil
   294  }
   295  
   296  func (m *ChaincodeDeploymentSpec) GetCodePackage() []byte {
   297  	if m != nil {
   298  		return m.CodePackage
   299  	}
   300  	return nil
   301  }
   302  
   303  func (m *ChaincodeDeploymentSpec) GetExecEnv() ChaincodeDeploymentSpec_ExecutionEnvironment {
   304  	if m != nil {
   305  		return m.ExecEnv
   306  	}
   307  	return ChaincodeDeploymentSpec_DOCKER
   308  }
   309  
   310  // Carries the chaincode function and its arguments.
   311  type ChaincodeInvocationSpec struct {
   312  	ChaincodeSpec *ChaincodeSpec `protobuf:"bytes,1,opt,name=chaincode_spec,json=chaincodeSpec" json:"chaincode_spec,omitempty"`
   313  	// This field can contain a user-specified ID generation algorithm
   314  	// If supplied, this will be used to generate a ID
   315  	// If not supplied (left empty), sha256base64 will be used
   316  	// The algorithm consists of two parts:
   317  	//  1, a hash function
   318  	//  2, a decoding used to decode user (string) input to bytes
   319  	// Currently, SHA256 with BASE64 is supported (e.g. idGenerationAlg='sha256base64')
   320  	IdGenerationAlg string      `protobuf:"bytes,2,opt,name=id_generation_alg,json=idGenerationAlg" json:"id_generation_alg,omitempty"`
   321  	SenderSpec      *SenderSpec `protobuf:"bytes,3,opt,name=sender_spec,json=senderSpec" json:"sender_spec,omitempty"`
   322  	Sig             []byte      `protobuf:"bytes,4,opt,name=sig,proto3" json:"sig,omitempty"`
   323  }
   324  
   325  func (m *ChaincodeInvocationSpec) Reset()                    { *m = ChaincodeInvocationSpec{} }
   326  func (m *ChaincodeInvocationSpec) String() string            { return proto.CompactTextString(m) }
   327  func (*ChaincodeInvocationSpec) ProtoMessage()               {}
   328  func (*ChaincodeInvocationSpec) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{6} }
   329  
   330  func (m *ChaincodeInvocationSpec) GetChaincodeSpec() *ChaincodeSpec {
   331  	if m != nil {
   332  		return m.ChaincodeSpec
   333  	}
   334  	return nil
   335  }
   336  
   337  func (m *ChaincodeInvocationSpec) GetIdGenerationAlg() string {
   338  	if m != nil {
   339  		return m.IdGenerationAlg
   340  	}
   341  	return ""
   342  }
   343  
   344  func (m *ChaincodeInvocationSpec) GetSenderSpec() *SenderSpec {
   345  	if m != nil {
   346  		return m.SenderSpec
   347  	}
   348  	return nil
   349  }
   350  
   351  func (m *ChaincodeInvocationSpec) GetSig() []byte {
   352  	if m != nil {
   353  		return m.Sig
   354  	}
   355  	return nil
   356  }
   357  
   358  func init() {
   359  	proto.RegisterType((*ChaincodeID)(nil), "protos.ChaincodeID")
   360  	proto.RegisterType((*ChaincodeInput)(nil), "protos.ChaincodeInput")
   361  	proto.RegisterType((*ChaincodeSpec)(nil), "protos.ChaincodeSpec")
   362  	proto.RegisterType((*SenderSpec)(nil), "protos.SenderSpec")
   363  	proto.RegisterType((*SignContent)(nil), "protos.SignContent")
   364  	proto.RegisterType((*ChaincodeDeploymentSpec)(nil), "protos.ChaincodeDeploymentSpec")
   365  	proto.RegisterType((*ChaincodeInvocationSpec)(nil), "protos.ChaincodeInvocationSpec")
   366  	proto.RegisterEnum("protos.ConfidentialityLevel", ConfidentialityLevel_name, ConfidentialityLevel_value)
   367  	proto.RegisterEnum("protos.ChaincodeSpec_Type", ChaincodeSpec_Type_name, ChaincodeSpec_Type_value)
   368  	proto.RegisterEnum("protos.ChaincodeDeploymentSpec_ExecutionEnvironment", ChaincodeDeploymentSpec_ExecutionEnvironment_name, ChaincodeDeploymentSpec_ExecutionEnvironment_value)
   369  }
   370  
   371  func init() { proto.RegisterFile("peer/chaincode.proto", fileDescriptor1) }
   372  
   373  var fileDescriptor1 = []byte{
   374  	// 699 bytes of a gzipped FileDescriptorProto
   375  	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x54, 0xdd, 0x6e, 0xeb, 0x44,
   376  	0x10, 0xae, 0x9b, 0xf4, 0x6f, 0x9c, 0x04, 0xb3, 0x94, 0x12, 0x95, 0x0b, 0x8a, 0xc5, 0x45, 0x55,
   377  	0x21, 0x47, 0xa4, 0x15, 0x57, 0x08, 0x29, 0x8d, 0xdd, 0xca, 0x10, 0x92, 0x6a, 0x93, 0x22, 0xc1,
   378  	0x4d, 0xe4, 0xd8, 0x13, 0x77, 0x55, 0x7b, 0xd7, 0xb2, 0x37, 0x51, 0xf3, 0x4e, 0x3c, 0x03, 0x0f,
   379  	0xc0, 0x4b, 0x81, 0x76, 0x1d, 0xbb, 0x54, 0xe9, 0xdd, 0x39, 0xe7, 0xca, 0x33, 0xe3, 0x99, 0x9d,
   380  	0xef, 0xfb, 0x66, 0x76, 0xe1, 0x34, 0x43, 0xcc, 0x7b, 0xe1, 0x53, 0xc0, 0x78, 0x28, 0x22, 0x74,
   381  	0xb2, 0x5c, 0x48, 0x41, 0x0e, 0xf5, 0xa7, 0x38, 0xff, 0x26, 0x16, 0x22, 0x4e, 0xb0, 0xa7, 0xdd,
   382  	0xc5, 0x6a, 0xd9, 0x93, 0x2c, 0xc5, 0x42, 0x06, 0x69, 0x56, 0x26, 0xda, 0x13, 0x30, 0x87, 0x55,
   383  	0xad, 0xef, 0x12, 0x02, 0xcd, 0x2c, 0x90, 0x4f, 0x5d, 0xe3, 0xc2, 0xb8, 0x3c, 0xa1, 0xda, 0x56,
   384  	0x31, 0x1e, 0xa4, 0xd8, 0xdd, 0x2f, 0x63, 0xca, 0x26, 0x5d, 0x38, 0x5a, 0x63, 0x5e, 0x30, 0xc1,
   385  	0xbb, 0x0d, 0x1d, 0xae, 0x5c, 0xfb, 0x3b, 0xe8, 0xbc, 0x1e, 0xc8, 0xb3, 0x95, 0x54, 0xf5, 0x41,
   386  	0x1e, 0x17, 0x5d, 0xe3, 0xa2, 0x71, 0xd9, 0xa2, 0xda, 0xb6, 0xff, 0x35, 0xa0, 0x5d, 0xa7, 0x4d,
   387  	0x33, 0x0c, 0x89, 0x03, 0x4d, 0xb9, 0xc9, 0x50, 0x77, 0xee, 0xf4, 0xcf, 0x4b, 0x78, 0x85, 0xf3,
   388  	0x26, 0xc9, 0x99, 0x6d, 0x32, 0xa4, 0x3a, 0x8f, 0xfc, 0x08, 0xad, 0x9a, 0xf4, 0x9c, 0x45, 0x1a,
   389  	0x9d, 0xd9, 0xff, 0x62, 0xa7, 0xce, 0x77, 0xa9, 0x59, 0x27, 0xfa, 0x11, 0xf9, 0x1e, 0x0e, 0x98,
   390  	0x82, 0xa5, 0x71, 0x9b, 0xfd, 0xb3, 0xdd, 0x02, 0xf5, 0x97, 0x96, 0x49, 0x8a, 0xa7, 0x52, 0x4c,
   391  	0xac, 0x64, 0xb7, 0x79, 0x61, 0x5c, 0x1e, 0xd0, 0xca, 0xb5, 0x7f, 0x86, 0xa6, 0x42, 0x43, 0xda,
   392  	0x70, 0xf2, 0x38, 0x76, 0xbd, 0x3b, 0x7f, 0xec, 0xb9, 0xd6, 0x1e, 0x01, 0x38, 0xbc, 0x9f, 0x8c,
   393  	0x06, 0xe3, 0x7b, 0xcb, 0x20, 0xc7, 0xd0, 0x1c, 0x4f, 0x5c, 0xcf, 0xda, 0x27, 0x47, 0xd0, 0x18,
   394  	0x0e, 0xa8, 0xd5, 0x50, 0xa1, 0x5f, 0x06, 0xbf, 0x0f, 0xac, 0xa6, 0x9d, 0x02, 0x4c, 0x91, 0x47,
   395  	0x98, 0x6b, 0xf6, 0x67, 0x70, 0x58, 0x68, 0x4f, 0xf3, 0x6f, 0xd1, 0xad, 0xa7, 0xfa, 0x87, 0x62,
   396  	0xc5, 0x25, 0xe6, 0x9a, 0x60, 0x93, 0x56, 0x2e, 0xf9, 0x1a, 0x4e, 0x96, 0x88, 0xf3, 0x84, 0xa5,
   397  	0xac, 0xe4, 0xd2, 0xa2, 0xc7, 0x4b, 0xc4, 0x91, 0xf2, 0x89, 0x05, 0x8d, 0xb4, 0x88, 0x35, 0xe4,
   398  	0x16, 0x55, 0xa6, 0xfd, 0x97, 0x01, 0xe6, 0x94, 0xc5, 0x7c, 0x28, 0xb8, 0x44, 0x2e, 0xc9, 0x4f,
   399  	0xd0, 0x79, 0x95, 0xaf, 0xc8, 0x30, 0xd4, 0x8d, 0xcd, 0xfe, 0x97, 0xef, 0x0a, 0x4f, 0xdb, 0xe1,
   400  	0x9b, 0x61, 0x5d, 0xc1, 0xe7, 0x2c, 0x9a, 0xc7, 0xc8, 0x31, 0x0f, 0x24, 0x13, 0x7c, 0x1e, 0x24,
   401  	0xf1, 0x76, 0x3f, 0x3e, 0x63, 0xd1, 0x7d, 0x1d, 0x1f, 0x24, 0x31, 0xb9, 0x06, 0xb3, 0x24, 0x53,
   402  	0xb6, 0x29, 0x65, 0x27, 0x55, 0x9b, 0x57, 0x0d, 0x28, 0x14, 0xb5, 0x6d, 0xff, 0xbd, 0x0f, 0x5f,
   403  	0xd5, 0x08, 0x5c, 0xcc, 0x12, 0xb1, 0x49, 0x91, 0x4b, 0xdd, 0xfc, 0xc3, 0xa0, 0x0f, 0xa0, 0x83,
   404  	0xcb, 0x25, 0x86, 0x92, 0xad, 0x71, 0x1e, 0x05, 0x12, 0xb7, 0x9b, 0x73, 0xee, 0x94, 0x57, 0xc5,
   405  	0xa9, 0xae, 0x8a, 0x33, 0xab, 0xae, 0x0a, 0x6d, 0xd7, 0x15, 0x6e, 0x20, 0x91, 0x7c, 0x0b, 0x2d,
   406  	0xdd, 0x3b, 0x0b, 0xc2, 0xe7, 0x20, 0xc6, 0xad, 0xfa, 0xa6, 0x8a, 0x3d, 0x94, 0x21, 0x32, 0x81,
   407  	0x63, 0x7c, 0xc1, 0x70, 0x8e, 0x7c, 0xad, 0xa7, 0xd0, 0xe9, 0xdf, 0xec, 0xa0, 0x7b, 0x4b, 0xcb,
   408  	0xf1, 0x5e, 0x30, 0x5c, 0x29, 0xd1, 0x3c, 0xbe, 0x66, 0xb9, 0xe0, 0xea, 0x07, 0x3d, 0x52, 0xa7,
   409  	0x78, 0x7c, 0x6d, 0x3b, 0x70, 0xfa, 0x5e, 0x82, 0xda, 0x37, 0x77, 0x32, 0xfc, 0xd5, 0xa3, 0xe5,
   410  	0xee, 0x4d, 0xff, 0x98, 0xce, 0xbc, 0xdf, 0x2c, 0xc3, 0xfe, 0xc7, 0xf8, 0x9f, 0x80, 0x3e, 0x5f,
   411  	0x8b, 0x50, 0x0f, 0xe4, 0x23, 0x08, 0xf8, 0xa9, 0x67, 0xaf, 0x96, 0xb7, 0x60, 0xf5, 0xf2, 0x16,
   412  	0x2c, 0xbe, 0xba, 0x81, 0xd3, 0xa1, 0xe0, 0x4b, 0x16, 0x21, 0x97, 0x2c, 0x48, 0x98, 0xdc, 0x8c,
   413  	0x70, 0x8d, 0x89, 0x22, 0xfc, 0xf0, 0x78, 0x3b, 0xf2, 0x87, 0xd6, 0x1e, 0xb1, 0xa0, 0x35, 0x9c,
   414  	0x8c, 0xef, 0x7c, 0xd7, 0x1b, 0xcf, 0xfc, 0xc1, 0xc8, 0x32, 0x6e, 0xe7, 0x70, 0x25, 0xf2, 0xd8,
   415  	0x61, 0xfc, 0x39, 0x09, 0x16, 0xc5, 0x52, 0xac, 0x78, 0xa4, 0x81, 0xa9, 0x88, 0xa6, 0x54, 0xe1,
   416  	0x50, 0x2f, 0xe8, 0x9f, 0x3f, 0xc4, 0x4c, 0x3e, 0xad, 0x16, 0x4e, 0x28, 0xd2, 0xde, 0x4e, 0x49,
   417  	0xaf, 0x2a, 0x29, 0x1f, 0xd2, 0xa2, 0xa7, 0x4a, 0x16, 0xe5, 0x23, 0x7b, 0xfd, 0x5f, 0x00, 0x00,
   418  	0x00, 0xff, 0xff, 0xa3, 0xcd, 0x76, 0x7e, 0x83, 0x05, 0x00, 0x00,
   419  }