github.com/ZihuaZhang/fabric-protos-go@v1.0.7/peer/proposal_response.pb.go (about)

     1  // Code generated by protoc-gen-go. DO NOT EDIT.
     2  // source: peer/proposal_response.proto
     3  
     4  package peer
     5  
     6  import (
     7  	fmt "fmt"
     8  	proto "github.com/golang/protobuf/proto"
     9  	common "github.com/ZihuaZhang/fabric-protos-go/common"
    10  	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
    11  	math "math"
    12  )
    13  
    14  // Reference imports to suppress errors if they are not otherwise used.
    15  var _ = proto.Marshal
    16  var _ = fmt.Errorf
    17  var _ = math.Inf
    18  
    19  // This is a compile-time assertion to ensure that this generated file
    20  // is compatible with the proto package it is being compiled against.
    21  // A compilation error at this line likely means your copy of the
    22  // proto package needs to be updated.
    23  const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
    24  
    25  // A ProposalResponse is returned from an endorser to the proposal submitter.
    26  // The idea is that this message contains the endorser's response to the
    27  // request of a client to perform an action over a chaincode (or more
    28  // generically on the ledger); the response might be success/error (conveyed in
    29  // the Response field) together with a description of the action and a
    30  // signature over it by that endorser.  If a sufficient number of distinct
    31  // endorsers agree on the same action and produce signature to that effect, a
    32  // transaction can be generated and sent for ordering.
    33  type ProposalResponse struct {
    34  	// Version indicates message protocol version
    35  	Version int32 `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"`
    36  	// Timestamp is the time that the message
    37  	// was created as  defined by the sender
    38  	Timestamp *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
    39  	// A response message indicating whether the
    40  	// endorsement of the action was successful
    41  	Response *Response `protobuf:"bytes,4,opt,name=response,proto3" json:"response,omitempty"`
    42  	// The payload of response. It is the bytes of ProposalResponsePayload
    43  	Payload []byte `protobuf:"bytes,5,opt,name=payload,proto3" json:"payload,omitempty"`
    44  	// The endorsement of the proposal, basically
    45  	// the endorser's signature over the payload
    46  	Endorsement *Endorsement `protobuf:"bytes,6,opt,name=endorsement,proto3" json:"endorsement,omitempty"`
    47  	// The chaincode interest derived from simulating the proposal.
    48  	Interest             *ChaincodeInterest `protobuf:"bytes,7,opt,name=interest,proto3" json:"interest,omitempty"`
    49  	XXX_NoUnkeyedLiteral struct{}           `json:"-"`
    50  	XXX_unrecognized     []byte             `json:"-"`
    51  	XXX_sizecache        int32              `json:"-"`
    52  }
    53  
    54  func (m *ProposalResponse) Reset()         { *m = ProposalResponse{} }
    55  func (m *ProposalResponse) String() string { return proto.CompactTextString(m) }
    56  func (*ProposalResponse) ProtoMessage()    {}
    57  func (*ProposalResponse) Descriptor() ([]byte, []int) {
    58  	return fileDescriptor_2ed51030656d961a, []int{0}
    59  }
    60  
    61  func (m *ProposalResponse) XXX_Unmarshal(b []byte) error {
    62  	return xxx_messageInfo_ProposalResponse.Unmarshal(m, b)
    63  }
    64  func (m *ProposalResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
    65  	return xxx_messageInfo_ProposalResponse.Marshal(b, m, deterministic)
    66  }
    67  func (m *ProposalResponse) XXX_Merge(src proto.Message) {
    68  	xxx_messageInfo_ProposalResponse.Merge(m, src)
    69  }
    70  func (m *ProposalResponse) XXX_Size() int {
    71  	return xxx_messageInfo_ProposalResponse.Size(m)
    72  }
    73  func (m *ProposalResponse) XXX_DiscardUnknown() {
    74  	xxx_messageInfo_ProposalResponse.DiscardUnknown(m)
    75  }
    76  
    77  var xxx_messageInfo_ProposalResponse proto.InternalMessageInfo
    78  
    79  func (m *ProposalResponse) GetVersion() int32 {
    80  	if m != nil {
    81  		return m.Version
    82  	}
    83  	return 0
    84  }
    85  
    86  func (m *ProposalResponse) GetTimestamp() *timestamppb.Timestamp {
    87  	if m != nil {
    88  		return m.Timestamp
    89  	}
    90  	return nil
    91  }
    92  
    93  func (m *ProposalResponse) GetResponse() *Response {
    94  	if m != nil {
    95  		return m.Response
    96  	}
    97  	return nil
    98  }
    99  
   100  func (m *ProposalResponse) GetPayload() []byte {
   101  	if m != nil {
   102  		return m.Payload
   103  	}
   104  	return nil
   105  }
   106  
   107  func (m *ProposalResponse) GetEndorsement() *Endorsement {
   108  	if m != nil {
   109  		return m.Endorsement
   110  	}
   111  	return nil
   112  }
   113  
   114  func (m *ProposalResponse) GetInterest() *ChaincodeInterest {
   115  	if m != nil {
   116  		return m.Interest
   117  	}
   118  	return nil
   119  }
   120  
   121  // A response with a representation similar to an HTTP response that can
   122  // be used within another message.
   123  type Response struct {
   124  	// A status code that should follow the HTTP status codes.
   125  	Status int32 `protobuf:"varint,1,opt,name=status,proto3" json:"status,omitempty"`
   126  	// A message associated with the response code.
   127  	Message string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
   128  	// A payload that can be used to include metadata with this response.
   129  	Payload              []byte   `protobuf:"bytes,3,opt,name=payload,proto3" json:"payload,omitempty"`
   130  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   131  	XXX_unrecognized     []byte   `json:"-"`
   132  	XXX_sizecache        int32    `json:"-"`
   133  }
   134  
   135  func (m *Response) Reset()         { *m = Response{} }
   136  func (m *Response) String() string { return proto.CompactTextString(m) }
   137  func (*Response) ProtoMessage()    {}
   138  func (*Response) Descriptor() ([]byte, []int) {
   139  	return fileDescriptor_2ed51030656d961a, []int{1}
   140  }
   141  
   142  func (m *Response) XXX_Unmarshal(b []byte) error {
   143  	return xxx_messageInfo_Response.Unmarshal(m, b)
   144  }
   145  func (m *Response) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   146  	return xxx_messageInfo_Response.Marshal(b, m, deterministic)
   147  }
   148  func (m *Response) XXX_Merge(src proto.Message) {
   149  	xxx_messageInfo_Response.Merge(m, src)
   150  }
   151  func (m *Response) XXX_Size() int {
   152  	return xxx_messageInfo_Response.Size(m)
   153  }
   154  func (m *Response) XXX_DiscardUnknown() {
   155  	xxx_messageInfo_Response.DiscardUnknown(m)
   156  }
   157  
   158  var xxx_messageInfo_Response proto.InternalMessageInfo
   159  
   160  func (m *Response) GetStatus() int32 {
   161  	if m != nil {
   162  		return m.Status
   163  	}
   164  	return 0
   165  }
   166  
   167  func (m *Response) GetMessage() string {
   168  	if m != nil {
   169  		return m.Message
   170  	}
   171  	return ""
   172  }
   173  
   174  func (m *Response) GetPayload() []byte {
   175  	if m != nil {
   176  		return m.Payload
   177  	}
   178  	return nil
   179  }
   180  
   181  // ProposalResponsePayload is the payload of a proposal response.  This message
   182  // is the "bridge" between the client's request and the endorser's action in
   183  // response to that request. Concretely, for chaincodes, it contains a hashed
   184  // representation of the proposal (proposalHash) and a representation of the
   185  // chaincode state changes and events inside the extension field.
   186  type ProposalResponsePayload struct {
   187  	// Hash of the proposal that triggered this response. The hash is used to
   188  	// link a response with its proposal, both for bookeeping purposes on an
   189  	// asynchronous system and for security reasons (accountability,
   190  	// non-repudiation). The hash usually covers the entire Proposal message
   191  	// (byte-by-byte).
   192  	ProposalHash []byte `protobuf:"bytes,1,opt,name=proposal_hash,json=proposalHash,proto3" json:"proposal_hash,omitempty"`
   193  	// Extension should be unmarshaled to a type-specific message. The type of
   194  	// the extension in any proposal response depends on the type of the proposal
   195  	// that the client selected when the proposal was initially sent out.  In
   196  	// particular, this information is stored in the type field of a Header.  For
   197  	// chaincode, it's a ChaincodeAction message
   198  	Extension            []byte   `protobuf:"bytes,2,opt,name=extension,proto3" json:"extension,omitempty"`
   199  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   200  	XXX_unrecognized     []byte   `json:"-"`
   201  	XXX_sizecache        int32    `json:"-"`
   202  }
   203  
   204  func (m *ProposalResponsePayload) Reset()         { *m = ProposalResponsePayload{} }
   205  func (m *ProposalResponsePayload) String() string { return proto.CompactTextString(m) }
   206  func (*ProposalResponsePayload) ProtoMessage()    {}
   207  func (*ProposalResponsePayload) Descriptor() ([]byte, []int) {
   208  	return fileDescriptor_2ed51030656d961a, []int{2}
   209  }
   210  
   211  func (m *ProposalResponsePayload) XXX_Unmarshal(b []byte) error {
   212  	return xxx_messageInfo_ProposalResponsePayload.Unmarshal(m, b)
   213  }
   214  func (m *ProposalResponsePayload) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   215  	return xxx_messageInfo_ProposalResponsePayload.Marshal(b, m, deterministic)
   216  }
   217  func (m *ProposalResponsePayload) XXX_Merge(src proto.Message) {
   218  	xxx_messageInfo_ProposalResponsePayload.Merge(m, src)
   219  }
   220  func (m *ProposalResponsePayload) XXX_Size() int {
   221  	return xxx_messageInfo_ProposalResponsePayload.Size(m)
   222  }
   223  func (m *ProposalResponsePayload) XXX_DiscardUnknown() {
   224  	xxx_messageInfo_ProposalResponsePayload.DiscardUnknown(m)
   225  }
   226  
   227  var xxx_messageInfo_ProposalResponsePayload proto.InternalMessageInfo
   228  
   229  func (m *ProposalResponsePayload) GetProposalHash() []byte {
   230  	if m != nil {
   231  		return m.ProposalHash
   232  	}
   233  	return nil
   234  }
   235  
   236  func (m *ProposalResponsePayload) GetExtension() []byte {
   237  	if m != nil {
   238  		return m.Extension
   239  	}
   240  	return nil
   241  }
   242  
   243  // An endorsement is a signature of an endorser over a proposal response.  By
   244  // producing an endorsement message, an endorser implicitly "approves" that
   245  // proposal response and the actions contained therein. When enough
   246  // endorsements have been collected, a transaction can be generated out of a
   247  // set of proposal responses.  Note that this message only contains an identity
   248  // and a signature but no signed payload. This is intentional because
   249  // endorsements are supposed to be collected in a transaction, and they are all
   250  // expected to endorse a single proposal response/action (many endorsements
   251  // over a single proposal response)
   252  type Endorsement struct {
   253  	// Identity of the endorser (e.g. its certificate)
   254  	Endorser []byte `protobuf:"bytes,1,opt,name=endorser,proto3" json:"endorser,omitempty"`
   255  	// Signature of the payload included in ProposalResponse concatenated with
   256  	// the endorser's certificate; ie, sign(ProposalResponse.payload + endorser)
   257  	Signature            []byte   `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"`
   258  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   259  	XXX_unrecognized     []byte   `json:"-"`
   260  	XXX_sizecache        int32    `json:"-"`
   261  }
   262  
   263  func (m *Endorsement) Reset()         { *m = Endorsement{} }
   264  func (m *Endorsement) String() string { return proto.CompactTextString(m) }
   265  func (*Endorsement) ProtoMessage()    {}
   266  func (*Endorsement) Descriptor() ([]byte, []int) {
   267  	return fileDescriptor_2ed51030656d961a, []int{3}
   268  }
   269  
   270  func (m *Endorsement) XXX_Unmarshal(b []byte) error {
   271  	return xxx_messageInfo_Endorsement.Unmarshal(m, b)
   272  }
   273  func (m *Endorsement) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   274  	return xxx_messageInfo_Endorsement.Marshal(b, m, deterministic)
   275  }
   276  func (m *Endorsement) XXX_Merge(src proto.Message) {
   277  	xxx_messageInfo_Endorsement.Merge(m, src)
   278  }
   279  func (m *Endorsement) XXX_Size() int {
   280  	return xxx_messageInfo_Endorsement.Size(m)
   281  }
   282  func (m *Endorsement) XXX_DiscardUnknown() {
   283  	xxx_messageInfo_Endorsement.DiscardUnknown(m)
   284  }
   285  
   286  var xxx_messageInfo_Endorsement proto.InternalMessageInfo
   287  
   288  func (m *Endorsement) GetEndorser() []byte {
   289  	if m != nil {
   290  		return m.Endorser
   291  	}
   292  	return nil
   293  }
   294  
   295  func (m *Endorsement) GetSignature() []byte {
   296  	if m != nil {
   297  		return m.Signature
   298  	}
   299  	return nil
   300  }
   301  
   302  // ChaincodeInterest defines an interest about an endorsement
   303  // for a specific single chaincode invocation.
   304  // Multiple chaincodes indicate chaincode to chaincode invocations.
   305  type ChaincodeInterest struct {
   306  	Chaincodes           []*ChaincodeCall `protobuf:"bytes,1,rep,name=chaincodes,proto3" json:"chaincodes,omitempty"`
   307  	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
   308  	XXX_unrecognized     []byte           `json:"-"`
   309  	XXX_sizecache        int32            `json:"-"`
   310  }
   311  
   312  func (m *ChaincodeInterest) Reset()         { *m = ChaincodeInterest{} }
   313  func (m *ChaincodeInterest) String() string { return proto.CompactTextString(m) }
   314  func (*ChaincodeInterest) ProtoMessage()    {}
   315  func (*ChaincodeInterest) Descriptor() ([]byte, []int) {
   316  	return fileDescriptor_2ed51030656d961a, []int{4}
   317  }
   318  
   319  func (m *ChaincodeInterest) XXX_Unmarshal(b []byte) error {
   320  	return xxx_messageInfo_ChaincodeInterest.Unmarshal(m, b)
   321  }
   322  func (m *ChaincodeInterest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   323  	return xxx_messageInfo_ChaincodeInterest.Marshal(b, m, deterministic)
   324  }
   325  func (m *ChaincodeInterest) XXX_Merge(src proto.Message) {
   326  	xxx_messageInfo_ChaincodeInterest.Merge(m, src)
   327  }
   328  func (m *ChaincodeInterest) XXX_Size() int {
   329  	return xxx_messageInfo_ChaincodeInterest.Size(m)
   330  }
   331  func (m *ChaincodeInterest) XXX_DiscardUnknown() {
   332  	xxx_messageInfo_ChaincodeInterest.DiscardUnknown(m)
   333  }
   334  
   335  var xxx_messageInfo_ChaincodeInterest proto.InternalMessageInfo
   336  
   337  func (m *ChaincodeInterest) GetChaincodes() []*ChaincodeCall {
   338  	if m != nil {
   339  		return m.Chaincodes
   340  	}
   341  	return nil
   342  }
   343  
   344  // ChaincodeCall defines a call to a chaincode.
   345  // It may have collections that are related to the chaincode
   346  type ChaincodeCall struct {
   347  	Name            string   `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
   348  	CollectionNames []string `protobuf:"bytes,2,rep,name=collection_names,json=collectionNames,proto3" json:"collection_names,omitempty"`
   349  	NoPrivateReads  bool     `protobuf:"varint,3,opt,name=no_private_reads,json=noPrivateReads,proto3" json:"no_private_reads,omitempty"`
   350  	NoPublicWrites  bool     `protobuf:"varint,4,opt,name=no_public_writes,json=noPublicWrites,proto3" json:"no_public_writes,omitempty"`
   351  	// The set of signature policies associated with states in the write-set
   352  	// that have state-based endorsement policies.
   353  	KeyPolicies []*common.SignaturePolicyEnvelope `protobuf:"bytes,5,rep,name=key_policies,json=keyPolicies,proto3" json:"key_policies,omitempty"`
   354  	// Indicates we wish to ignore the namespace endorsement policy
   355  	DisregardNamespacePolicy bool     `protobuf:"varint,6,opt,name=disregard_namespace_policy,json=disregardNamespacePolicy,proto3" json:"disregard_namespace_policy,omitempty"`
   356  	XXX_NoUnkeyedLiteral     struct{} `json:"-"`
   357  	XXX_unrecognized         []byte   `json:"-"`
   358  	XXX_sizecache            int32    `json:"-"`
   359  }
   360  
   361  func (m *ChaincodeCall) Reset()         { *m = ChaincodeCall{} }
   362  func (m *ChaincodeCall) String() string { return proto.CompactTextString(m) }
   363  func (*ChaincodeCall) ProtoMessage()    {}
   364  func (*ChaincodeCall) Descriptor() ([]byte, []int) {
   365  	return fileDescriptor_2ed51030656d961a, []int{5}
   366  }
   367  
   368  func (m *ChaincodeCall) XXX_Unmarshal(b []byte) error {
   369  	return xxx_messageInfo_ChaincodeCall.Unmarshal(m, b)
   370  }
   371  func (m *ChaincodeCall) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   372  	return xxx_messageInfo_ChaincodeCall.Marshal(b, m, deterministic)
   373  }
   374  func (m *ChaincodeCall) XXX_Merge(src proto.Message) {
   375  	xxx_messageInfo_ChaincodeCall.Merge(m, src)
   376  }
   377  func (m *ChaincodeCall) XXX_Size() int {
   378  	return xxx_messageInfo_ChaincodeCall.Size(m)
   379  }
   380  func (m *ChaincodeCall) XXX_DiscardUnknown() {
   381  	xxx_messageInfo_ChaincodeCall.DiscardUnknown(m)
   382  }
   383  
   384  var xxx_messageInfo_ChaincodeCall proto.InternalMessageInfo
   385  
   386  func (m *ChaincodeCall) GetName() string {
   387  	if m != nil {
   388  		return m.Name
   389  	}
   390  	return ""
   391  }
   392  
   393  func (m *ChaincodeCall) GetCollectionNames() []string {
   394  	if m != nil {
   395  		return m.CollectionNames
   396  	}
   397  	return nil
   398  }
   399  
   400  func (m *ChaincodeCall) GetNoPrivateReads() bool {
   401  	if m != nil {
   402  		return m.NoPrivateReads
   403  	}
   404  	return false
   405  }
   406  
   407  func (m *ChaincodeCall) GetNoPublicWrites() bool {
   408  	if m != nil {
   409  		return m.NoPublicWrites
   410  	}
   411  	return false
   412  }
   413  
   414  func (m *ChaincodeCall) GetKeyPolicies() []*common.SignaturePolicyEnvelope {
   415  	if m != nil {
   416  		return m.KeyPolicies
   417  	}
   418  	return nil
   419  }
   420  
   421  func (m *ChaincodeCall) GetDisregardNamespacePolicy() bool {
   422  	if m != nil {
   423  		return m.DisregardNamespacePolicy
   424  	}
   425  	return false
   426  }
   427  
   428  func init() {
   429  	proto.RegisterType((*ProposalResponse)(nil), "protos.ProposalResponse")
   430  	proto.RegisterType((*Response)(nil), "protos.Response")
   431  	proto.RegisterType((*ProposalResponsePayload)(nil), "protos.ProposalResponsePayload")
   432  	proto.RegisterType((*Endorsement)(nil), "protos.Endorsement")
   433  	proto.RegisterType((*ChaincodeInterest)(nil), "protos.ChaincodeInterest")
   434  	proto.RegisterType((*ChaincodeCall)(nil), "protos.ChaincodeCall")
   435  }
   436  
   437  func init() { proto.RegisterFile("peer/proposal_response.proto", fileDescriptor_2ed51030656d961a) }
   438  
   439  var fileDescriptor_2ed51030656d961a = []byte{
   440  	// 591 bytes of a gzipped FileDescriptorProto
   441  	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x6c, 0x54, 0xdd, 0x6b, 0xdb, 0x3e,
   442  	0x14, 0x25, 0xe9, 0x57, 0x72, 0x93, 0xfe, 0x7e, 0x99, 0x46, 0x37, 0x2f, 0x14, 0x1a, 0xbc, 0x97,
   443  	0x0c, 0x5a, 0x1b, 0x3a, 0x0a, 0x7b, 0xd8, 0x53, 0x4b, 0xd9, 0xc7, 0x43, 0x09, 0xda, 0xd8, 0x60,
   444  	0x0c, 0x82, 0x62, 0xdf, 0x3a, 0x22, 0xb6, 0x64, 0x24, 0x25, 0x9b, 0xff, 0x97, 0x3d, 0xee, 0x0f,
   445  	0x1d, 0x96, 0x2c, 0x27, 0x5d, 0xf7, 0x64, 0xdf, 0xa3, 0x73, 0xcf, 0xbd, 0xf7, 0xe8, 0x03, 0x4e,
   446  	0x4b, 0x44, 0x15, 0x97, 0x4a, 0x96, 0x52, 0xb3, 0x7c, 0xae, 0x50, 0x97, 0x52, 0x68, 0x8c, 0x4a,
   447  	0x25, 0x8d, 0x24, 0x87, 0xf6, 0xa3, 0xc7, 0x67, 0x99, 0x94, 0x59, 0x8e, 0xb1, 0x0d, 0x17, 0xeb,
   448  	0xfb, 0xd8, 0xf0, 0x02, 0xb5, 0x61, 0x45, 0xe9, 0x88, 0xe3, 0x93, 0x44, 0x16, 0x85, 0x14, 0x71,
   449  	0x29, 0x73, 0x9e, 0x70, 0xd4, 0x0e, 0x0e, 0x7f, 0x75, 0x61, 0x34, 0x6b, 0xb4, 0x69, 0x23, 0x4d,
   450  	0x02, 0x38, 0xda, 0xa0, 0xd2, 0x5c, 0x8a, 0xa0, 0x33, 0xe9, 0x4c, 0x0f, 0xa8, 0x0f, 0xc9, 0x1b,
   451  	0xe8, 0xb7, 0xc2, 0x41, 0x77, 0xd2, 0x99, 0x0e, 0x2e, 0xc7, 0x91, 0x2b, 0x1d, 0xf9, 0xd2, 0xd1,
   452  	0x67, 0xcf, 0xa0, 0x5b, 0x32, 0x39, 0x87, 0x9e, 0x6f, 0x3d, 0xd8, 0xb7, 0x89, 0x23, 0x97, 0xa1,
   453  	0x23, 0x5f, 0x97, 0xb6, 0x8c, 0xba, 0x83, 0x92, 0x55, 0xb9, 0x64, 0x69, 0x70, 0x30, 0xe9, 0x4c,
   454  	0x87, 0xd4, 0x87, 0xe4, 0x0a, 0x06, 0x28, 0x52, 0xa9, 0x34, 0x16, 0x28, 0x4c, 0x70, 0x68, 0xa5,
   455  	0x9e, 0x7a, 0xa9, 0xdb, 0xed, 0x12, 0xdd, 0xe5, 0x91, 0x2b, 0xe8, 0x71, 0x61, 0x50, 0xa1, 0x36,
   456  	0xc1, 0x91, 0xcd, 0x79, 0xe1, 0x73, 0x6e, 0x96, 0x8c, 0x8b, 0x44, 0xa6, 0xf8, 0xa1, 0x21, 0xd0,
   457  	0x96, 0x1a, 0x7e, 0x81, 0x5e, 0xeb, 0xca, 0x33, 0x38, 0xd4, 0x86, 0x99, 0xb5, 0x6e, 0x4c, 0x69,
   458  	0xa2, 0xba, 0xd7, 0x02, 0xb5, 0x66, 0x19, 0x5a, 0x47, 0xfa, 0xd4, 0x87, 0xbb, 0x53, 0xec, 0x3d,
   459  	0x98, 0x22, 0xfc, 0x0e, 0xcf, 0xff, 0x76, 0x7d, 0xd6, 0x0c, 0xf8, 0x12, 0x8e, 0xdb, 0xcd, 0x5e,
   460  	0x32, 0xbd, 0xb4, 0xd5, 0x86, 0x74, 0xe8, 0xc1, 0xf7, 0x4c, 0x2f, 0xc9, 0x29, 0xf4, 0xf1, 0xa7,
   461  	0x41, 0x61, 0xf7, 0xa8, 0x6b, 0x09, 0x5b, 0x20, 0x7c, 0x07, 0x83, 0x1d, 0x23, 0xc8, 0x18, 0x7a,
   462  	0x8d, 0x15, 0xaa, 0x11, 0x6b, 0xe3, 0x5a, 0x48, 0xf3, 0x4c, 0x30, 0xb3, 0x56, 0xe8, 0x85, 0x5a,
   463  	0x20, 0xfc, 0x08, 0x4f, 0x1e, 0xb9, 0x43, 0xae, 0x00, 0x12, 0x0f, 0xd6, 0x5e, 0xec, 0x4d, 0x07,
   464  	0x97, 0x27, 0x8f, 0xcc, 0xbc, 0x61, 0x79, 0x4e, 0x77, 0x88, 0xe1, 0xef, 0x2e, 0x1c, 0x3f, 0x58,
   465  	0x25, 0x04, 0xf6, 0x05, 0x2b, 0xd0, 0xf6, 0xd4, 0xa7, 0xf6, 0x9f, 0xbc, 0x82, 0x51, 0x22, 0xf3,
   466  	0x1c, 0x13, 0xc3, 0xa5, 0x98, 0xd7, 0x90, 0x0e, 0xba, 0x93, 0xbd, 0x69, 0x9f, 0xfe, 0xbf, 0xc5,
   467  	0xef, 0x6a, 0x98, 0x4c, 0x61, 0x24, 0xe4, 0xbc, 0x54, 0x7c, 0xc3, 0x0c, 0xce, 0x15, 0xb2, 0x54,
   468  	0x5b, 0x9b, 0x7b, 0xf4, 0x3f, 0x21, 0x67, 0x0e, 0xa6, 0x35, 0xea, 0x99, 0xeb, 0x45, 0xce, 0x93,
   469  	0xf9, 0x0f, 0xc5, 0x0d, 0x6a, 0x7b, 0x06, 0x1d, 0xd3, 0xc2, 0x5f, 0x2d, 0x4a, 0xae, 0x61, 0xb8,
   470  	0xc2, 0x6a, 0xee, 0x2f, 0x49, 0x70, 0x60, 0xa7, 0x3b, 0x8b, 0xdc, 0xe5, 0x89, 0x3e, 0x79, 0x67,
   471  	0x66, 0x35, 0xa1, 0xba, 0x15, 0x1b, 0xcc, 0x65, 0x89, 0x74, 0xb0, 0xc2, 0x6a, 0xd6, 0xe4, 0x90,
   472  	0xb7, 0x30, 0x4e, 0xb9, 0x56, 0x98, 0x31, 0x95, 0xba, 0x09, 0x4a, 0x96, 0xa0, 0xd3, 0xac, 0xec,
   473  	0x81, 0xed, 0xd1, 0xa0, 0x65, 0xdc, 0x79, 0x82, 0x93, 0xbc, 0x5e, 0x41, 0x28, 0x55, 0x16, 0x2d,
   474  	0xab, 0x12, 0x55, 0x8e, 0x69, 0x86, 0x2a, 0xba, 0x67, 0x0b, 0xc5, 0x13, 0xef, 0x70, 0xfd, 0x1c,
   475  	0x5c, 0xff, 0xe3, 0xf4, 0x24, 0x2b, 0x96, 0xe1, 0xb7, 0xf3, 0x8c, 0x9b, 0xe5, 0x7a, 0x51, 0x37,
   476  	0x1c, 0xef, 0x68, 0xc4, 0x4e, 0xe3, 0xc2, 0x69, 0x5c, 0x64, 0x32, 0xae, 0x65, 0x16, 0xee, 0xf5,
   477  	0x78, 0xfd, 0x27, 0x00, 0x00, 0xff, 0xff, 0x6d, 0x2e, 0xf7, 0xb3, 0x64, 0x04, 0x00, 0x00,
   478  }