github.com/s7techlab/cckit@v0.10.5/gateway/chaincode.pb.go (about)

     1  // Gateway to network/chaincode
     2  // Two types of gateways: 1. Gateway to all chaincodes in Network 2. Gateway to some concrete chaincode instance in some channel
     3  
     4  // Code generated by protoc-gen-go. DO NOT EDIT.
     5  // versions:
     6  // 	protoc-gen-go v1.27.1
     7  // 	protoc        (unknown)
     8  // source: chaincode.proto
     9  
    10  package gateway
    11  
    12  import (
    13  	context "context"
    14  	peer "github.com/hyperledger/fabric-protos-go/peer"
    15  	_ "github.com/mwitkow/go-proto-validators"
    16  	_ "google.golang.org/genproto/googleapis/api/annotations"
    17  	grpc "google.golang.org/grpc"
    18  	codes "google.golang.org/grpc/codes"
    19  	status "google.golang.org/grpc/status"
    20  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    21  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    22  	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
    23  	reflect "reflect"
    24  	sync "sync"
    25  )
    26  
    27  const (
    28  	// Verify that this generated code is sufficiently up-to-date.
    29  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    30  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    31  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    32  )
    33  
    34  // Chaincode invocation type
    35  type InvocationType int32
    36  
    37  const (
    38  	// Simulation
    39  	InvocationType_INVOCATION_TYPE_QUERY InvocationType = 0
    40  	// Simulation and applying to ledger
    41  	InvocationType_INVOCATION_TYPE_INVOKE InvocationType = 1
    42  )
    43  
    44  // Enum value maps for InvocationType.
    45  var (
    46  	InvocationType_name = map[int32]string{
    47  		0: "INVOCATION_TYPE_QUERY",
    48  		1: "INVOCATION_TYPE_INVOKE",
    49  	}
    50  	InvocationType_value = map[string]int32{
    51  		"INVOCATION_TYPE_QUERY":  0,
    52  		"INVOCATION_TYPE_INVOKE": 1,
    53  	}
    54  )
    55  
    56  func (x InvocationType) Enum() *InvocationType {
    57  	p := new(InvocationType)
    58  	*p = x
    59  	return p
    60  }
    61  
    62  func (x InvocationType) String() string {
    63  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
    64  }
    65  
    66  func (InvocationType) Descriptor() protoreflect.EnumDescriptor {
    67  	return file_chaincode_proto_enumTypes[0].Descriptor()
    68  }
    69  
    70  func (InvocationType) Type() protoreflect.EnumType {
    71  	return &file_chaincode_proto_enumTypes[0]
    72  }
    73  
    74  func (x InvocationType) Number() protoreflect.EnumNumber {
    75  	return protoreflect.EnumNumber(x)
    76  }
    77  
    78  // Deprecated: Use InvocationType.Descriptor instead.
    79  func (InvocationType) EnumDescriptor() ([]byte, []int) {
    80  	return file_chaincode_proto_rawDescGZIP(), []int{0}
    81  }
    82  
    83  // Chaincode locator - channel name and chaincode name
    84  type ChaincodeLocator struct {
    85  	state         protoimpl.MessageState
    86  	sizeCache     protoimpl.SizeCache
    87  	unknownFields protoimpl.UnknownFields
    88  
    89  	// Chaincode name
    90  	Chaincode string `protobuf:"bytes,1,opt,name=chaincode,proto3" json:"chaincode,omitempty"`
    91  	// Channel name
    92  	Channel string `protobuf:"bytes,2,opt,name=channel,proto3" json:"channel,omitempty"`
    93  }
    94  
    95  func (x *ChaincodeLocator) Reset() {
    96  	*x = ChaincodeLocator{}
    97  	if protoimpl.UnsafeEnabled {
    98  		mi := &file_chaincode_proto_msgTypes[0]
    99  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   100  		ms.StoreMessageInfo(mi)
   101  	}
   102  }
   103  
   104  func (x *ChaincodeLocator) String() string {
   105  	return protoimpl.X.MessageStringOf(x)
   106  }
   107  
   108  func (*ChaincodeLocator) ProtoMessage() {}
   109  
   110  func (x *ChaincodeLocator) ProtoReflect() protoreflect.Message {
   111  	mi := &file_chaincode_proto_msgTypes[0]
   112  	if protoimpl.UnsafeEnabled && x != nil {
   113  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   114  		if ms.LoadMessageInfo() == nil {
   115  			ms.StoreMessageInfo(mi)
   116  		}
   117  		return ms
   118  	}
   119  	return mi.MessageOf(x)
   120  }
   121  
   122  // Deprecated: Use ChaincodeLocator.ProtoReflect.Descriptor instead.
   123  func (*ChaincodeLocator) Descriptor() ([]byte, []int) {
   124  	return file_chaincode_proto_rawDescGZIP(), []int{0}
   125  }
   126  
   127  func (x *ChaincodeLocator) GetChaincode() string {
   128  	if x != nil {
   129  		return x.Chaincode
   130  	}
   131  	return ""
   132  }
   133  
   134  func (x *ChaincodeLocator) GetChannel() string {
   135  	if x != nil {
   136  		return x.Channel
   137  	}
   138  	return ""
   139  }
   140  
   141  // Chaincode invocation input
   142  type ChaincodeInput struct {
   143  	state         protoimpl.MessageState
   144  	sizeCache     protoimpl.SizeCache
   145  	unknownFields protoimpl.UnknownFields
   146  
   147  	// Input contains the arguments for invocation.
   148  	Args [][]byte `protobuf:"bytes,1,rep,name=args,proto3" json:"args,omitempty"`
   149  	// TransientMap contains data (e.g. cryptographic material) that might be used
   150  	// to implement some form of application-level confidentiality. The contents
   151  	// of this field are supposed to always be omitted from the transaction and
   152  	// excluded from the ledger.
   153  	Transient map[string][]byte `protobuf:"bytes,2,rep,name=transient,proto3" json:"transient,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   154  }
   155  
   156  func (x *ChaincodeInput) Reset() {
   157  	*x = ChaincodeInput{}
   158  	if protoimpl.UnsafeEnabled {
   159  		mi := &file_chaincode_proto_msgTypes[1]
   160  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   161  		ms.StoreMessageInfo(mi)
   162  	}
   163  }
   164  
   165  func (x *ChaincodeInput) String() string {
   166  	return protoimpl.X.MessageStringOf(x)
   167  }
   168  
   169  func (*ChaincodeInput) ProtoMessage() {}
   170  
   171  func (x *ChaincodeInput) ProtoReflect() protoreflect.Message {
   172  	mi := &file_chaincode_proto_msgTypes[1]
   173  	if protoimpl.UnsafeEnabled && x != nil {
   174  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   175  		if ms.LoadMessageInfo() == nil {
   176  			ms.StoreMessageInfo(mi)
   177  		}
   178  		return ms
   179  	}
   180  	return mi.MessageOf(x)
   181  }
   182  
   183  // Deprecated: Use ChaincodeInput.ProtoReflect.Descriptor instead.
   184  func (*ChaincodeInput) Descriptor() ([]byte, []int) {
   185  	return file_chaincode_proto_rawDescGZIP(), []int{1}
   186  }
   187  
   188  func (x *ChaincodeInput) GetArgs() [][]byte {
   189  	if x != nil {
   190  		return x.Args
   191  	}
   192  	return nil
   193  }
   194  
   195  func (x *ChaincodeInput) GetTransient() map[string][]byte {
   196  	if x != nil {
   197  		return x.Transient
   198  	}
   199  	return nil
   200  }
   201  
   202  // Chaincode execution specification
   203  type ChaincodeExecRequest struct {
   204  	state         protoimpl.MessageState
   205  	sizeCache     protoimpl.SizeCache
   206  	unknownFields protoimpl.UnknownFields
   207  
   208  	Locator *ChaincodeLocator `protobuf:"bytes,1,opt,name=locator,proto3" json:"locator,omitempty"`
   209  	Type    InvocationType    `protobuf:"varint,2,opt,name=type,proto3,enum=cckit.gateway.InvocationType" json:"type,omitempty"`
   210  	Input   *ChaincodeInput   `protobuf:"bytes,3,opt,name=input,proto3" json:"input,omitempty"`
   211  }
   212  
   213  func (x *ChaincodeExecRequest) Reset() {
   214  	*x = ChaincodeExecRequest{}
   215  	if protoimpl.UnsafeEnabled {
   216  		mi := &file_chaincode_proto_msgTypes[2]
   217  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   218  		ms.StoreMessageInfo(mi)
   219  	}
   220  }
   221  
   222  func (x *ChaincodeExecRequest) String() string {
   223  	return protoimpl.X.MessageStringOf(x)
   224  }
   225  
   226  func (*ChaincodeExecRequest) ProtoMessage() {}
   227  
   228  func (x *ChaincodeExecRequest) ProtoReflect() protoreflect.Message {
   229  	mi := &file_chaincode_proto_msgTypes[2]
   230  	if protoimpl.UnsafeEnabled && x != nil {
   231  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   232  		if ms.LoadMessageInfo() == nil {
   233  			ms.StoreMessageInfo(mi)
   234  		}
   235  		return ms
   236  	}
   237  	return mi.MessageOf(x)
   238  }
   239  
   240  // Deprecated: Use ChaincodeExecRequest.ProtoReflect.Descriptor instead.
   241  func (*ChaincodeExecRequest) Descriptor() ([]byte, []int) {
   242  	return file_chaincode_proto_rawDescGZIP(), []int{2}
   243  }
   244  
   245  func (x *ChaincodeExecRequest) GetLocator() *ChaincodeLocator {
   246  	if x != nil {
   247  		return x.Locator
   248  	}
   249  	return nil
   250  }
   251  
   252  func (x *ChaincodeExecRequest) GetType() InvocationType {
   253  	if x != nil {
   254  		return x.Type
   255  	}
   256  	return InvocationType_INVOCATION_TYPE_QUERY
   257  }
   258  
   259  func (x *ChaincodeExecRequest) GetInput() *ChaincodeInput {
   260  	if x != nil {
   261  		return x.Input
   262  	}
   263  	return nil
   264  }
   265  
   266  type ChaincodeQueryRequest struct {
   267  	state         protoimpl.MessageState
   268  	sizeCache     protoimpl.SizeCache
   269  	unknownFields protoimpl.UnknownFields
   270  
   271  	Locator *ChaincodeLocator `protobuf:"bytes,1,opt,name=locator,proto3" json:"locator,omitempty"`
   272  	Input   *ChaincodeInput   `protobuf:"bytes,3,opt,name=input,proto3" json:"input,omitempty"`
   273  }
   274  
   275  func (x *ChaincodeQueryRequest) Reset() {
   276  	*x = ChaincodeQueryRequest{}
   277  	if protoimpl.UnsafeEnabled {
   278  		mi := &file_chaincode_proto_msgTypes[3]
   279  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   280  		ms.StoreMessageInfo(mi)
   281  	}
   282  }
   283  
   284  func (x *ChaincodeQueryRequest) String() string {
   285  	return protoimpl.X.MessageStringOf(x)
   286  }
   287  
   288  func (*ChaincodeQueryRequest) ProtoMessage() {}
   289  
   290  func (x *ChaincodeQueryRequest) ProtoReflect() protoreflect.Message {
   291  	mi := &file_chaincode_proto_msgTypes[3]
   292  	if protoimpl.UnsafeEnabled && x != nil {
   293  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   294  		if ms.LoadMessageInfo() == nil {
   295  			ms.StoreMessageInfo(mi)
   296  		}
   297  		return ms
   298  	}
   299  	return mi.MessageOf(x)
   300  }
   301  
   302  // Deprecated: Use ChaincodeQueryRequest.ProtoReflect.Descriptor instead.
   303  func (*ChaincodeQueryRequest) Descriptor() ([]byte, []int) {
   304  	return file_chaincode_proto_rawDescGZIP(), []int{3}
   305  }
   306  
   307  func (x *ChaincodeQueryRequest) GetLocator() *ChaincodeLocator {
   308  	if x != nil {
   309  		return x.Locator
   310  	}
   311  	return nil
   312  }
   313  
   314  func (x *ChaincodeQueryRequest) GetInput() *ChaincodeInput {
   315  	if x != nil {
   316  		return x.Input
   317  	}
   318  	return nil
   319  }
   320  
   321  type ChaincodeInvokeRequest struct {
   322  	state         protoimpl.MessageState
   323  	sizeCache     protoimpl.SizeCache
   324  	unknownFields protoimpl.UnknownFields
   325  
   326  	Locator *ChaincodeLocator `protobuf:"bytes,1,opt,name=locator,proto3" json:"locator,omitempty"`
   327  	Input   *ChaincodeInput   `protobuf:"bytes,3,opt,name=input,proto3" json:"input,omitempty"`
   328  }
   329  
   330  func (x *ChaincodeInvokeRequest) Reset() {
   331  	*x = ChaincodeInvokeRequest{}
   332  	if protoimpl.UnsafeEnabled {
   333  		mi := &file_chaincode_proto_msgTypes[4]
   334  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   335  		ms.StoreMessageInfo(mi)
   336  	}
   337  }
   338  
   339  func (x *ChaincodeInvokeRequest) String() string {
   340  	return protoimpl.X.MessageStringOf(x)
   341  }
   342  
   343  func (*ChaincodeInvokeRequest) ProtoMessage() {}
   344  
   345  func (x *ChaincodeInvokeRequest) ProtoReflect() protoreflect.Message {
   346  	mi := &file_chaincode_proto_msgTypes[4]
   347  	if protoimpl.UnsafeEnabled && x != nil {
   348  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   349  		if ms.LoadMessageInfo() == nil {
   350  			ms.StoreMessageInfo(mi)
   351  		}
   352  		return ms
   353  	}
   354  	return mi.MessageOf(x)
   355  }
   356  
   357  // Deprecated: Use ChaincodeInvokeRequest.ProtoReflect.Descriptor instead.
   358  func (*ChaincodeInvokeRequest) Descriptor() ([]byte, []int) {
   359  	return file_chaincode_proto_rawDescGZIP(), []int{4}
   360  }
   361  
   362  func (x *ChaincodeInvokeRequest) GetLocator() *ChaincodeLocator {
   363  	if x != nil {
   364  		return x.Locator
   365  	}
   366  	return nil
   367  }
   368  
   369  func (x *ChaincodeInvokeRequest) GetInput() *ChaincodeInput {
   370  	if x != nil {
   371  		return x.Input
   372  	}
   373  	return nil
   374  }
   375  
   376  // Block limit number for event stream subscription or event list
   377  // Values can be negative
   378  type BlockLimit struct {
   379  	state         protoimpl.MessageState
   380  	sizeCache     protoimpl.SizeCache
   381  	unknownFields protoimpl.UnknownFields
   382  
   383  	// Block number
   384  	Num int64 `protobuf:"varint,1,opt,name=num,proto3" json:"num,omitempty"`
   385  }
   386  
   387  func (x *BlockLimit) Reset() {
   388  	*x = BlockLimit{}
   389  	if protoimpl.UnsafeEnabled {
   390  		mi := &file_chaincode_proto_msgTypes[5]
   391  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   392  		ms.StoreMessageInfo(mi)
   393  	}
   394  }
   395  
   396  func (x *BlockLimit) String() string {
   397  	return protoimpl.X.MessageStringOf(x)
   398  }
   399  
   400  func (*BlockLimit) ProtoMessage() {}
   401  
   402  func (x *BlockLimit) ProtoReflect() protoreflect.Message {
   403  	mi := &file_chaincode_proto_msgTypes[5]
   404  	if protoimpl.UnsafeEnabled && x != nil {
   405  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   406  		if ms.LoadMessageInfo() == nil {
   407  			ms.StoreMessageInfo(mi)
   408  		}
   409  		return ms
   410  	}
   411  	return mi.MessageOf(x)
   412  }
   413  
   414  // Deprecated: Use BlockLimit.ProtoReflect.Descriptor instead.
   415  func (*BlockLimit) Descriptor() ([]byte, []int) {
   416  	return file_chaincode_proto_rawDescGZIP(), []int{5}
   417  }
   418  
   419  func (x *BlockLimit) GetNum() int64 {
   420  	if x != nil {
   421  		return x.Num
   422  	}
   423  	return 0
   424  }
   425  
   426  // Chaincode events stream request
   427  type ChaincodeEventsStreamRequest struct {
   428  	state         protoimpl.MessageState
   429  	sizeCache     protoimpl.SizeCache
   430  	unknownFields protoimpl.UnknownFields
   431  
   432  	Locator   *ChaincodeLocator `protobuf:"bytes,1,opt,name=locator,proto3" json:"locator,omitempty"`
   433  	FromBlock *BlockLimit       `protobuf:"bytes,2,opt,name=from_block,json=fromBlock,proto3" json:"from_block,omitempty"`
   434  	ToBlock   *BlockLimit       `protobuf:"bytes,3,opt,name=to_block,json=toBlock,proto3" json:"to_block,omitempty"`
   435  	EventName []string          `protobuf:"bytes,4,rep,name=event_name,json=eventName,proto3" json:"event_name,omitempty"`
   436  }
   437  
   438  func (x *ChaincodeEventsStreamRequest) Reset() {
   439  	*x = ChaincodeEventsStreamRequest{}
   440  	if protoimpl.UnsafeEnabled {
   441  		mi := &file_chaincode_proto_msgTypes[6]
   442  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   443  		ms.StoreMessageInfo(mi)
   444  	}
   445  }
   446  
   447  func (x *ChaincodeEventsStreamRequest) String() string {
   448  	return protoimpl.X.MessageStringOf(x)
   449  }
   450  
   451  func (*ChaincodeEventsStreamRequest) ProtoMessage() {}
   452  
   453  func (x *ChaincodeEventsStreamRequest) ProtoReflect() protoreflect.Message {
   454  	mi := &file_chaincode_proto_msgTypes[6]
   455  	if protoimpl.UnsafeEnabled && x != nil {
   456  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   457  		if ms.LoadMessageInfo() == nil {
   458  			ms.StoreMessageInfo(mi)
   459  		}
   460  		return ms
   461  	}
   462  	return mi.MessageOf(x)
   463  }
   464  
   465  // Deprecated: Use ChaincodeEventsStreamRequest.ProtoReflect.Descriptor instead.
   466  func (*ChaincodeEventsStreamRequest) Descriptor() ([]byte, []int) {
   467  	return file_chaincode_proto_rawDescGZIP(), []int{6}
   468  }
   469  
   470  func (x *ChaincodeEventsStreamRequest) GetLocator() *ChaincodeLocator {
   471  	if x != nil {
   472  		return x.Locator
   473  	}
   474  	return nil
   475  }
   476  
   477  func (x *ChaincodeEventsStreamRequest) GetFromBlock() *BlockLimit {
   478  	if x != nil {
   479  		return x.FromBlock
   480  	}
   481  	return nil
   482  }
   483  
   484  func (x *ChaincodeEventsStreamRequest) GetToBlock() *BlockLimit {
   485  	if x != nil {
   486  		return x.ToBlock
   487  	}
   488  	return nil
   489  }
   490  
   491  func (x *ChaincodeEventsStreamRequest) GetEventName() []string {
   492  	if x != nil {
   493  		return x.EventName
   494  	}
   495  	return nil
   496  }
   497  
   498  // Chaincode events list request
   499  type ChaincodeEventsRequest struct {
   500  	state         protoimpl.MessageState
   501  	sizeCache     protoimpl.SizeCache
   502  	unknownFields protoimpl.UnknownFields
   503  
   504  	Locator   *ChaincodeLocator `protobuf:"bytes,1,opt,name=locator,proto3" json:"locator,omitempty"`
   505  	FromBlock *BlockLimit       `protobuf:"bytes,2,opt,name=from_block,json=fromBlock,proto3" json:"from_block,omitempty"`
   506  	ToBlock   *BlockLimit       `protobuf:"bytes,3,opt,name=to_block,json=toBlock,proto3" json:"to_block,omitempty"`
   507  	EventName []string          `protobuf:"bytes,4,rep,name=event_name,json=eventName,proto3" json:"event_name,omitempty"`
   508  	Limit     uint32            `protobuf:"varint,5,opt,name=limit,proto3" json:"limit,omitempty"`
   509  }
   510  
   511  func (x *ChaincodeEventsRequest) Reset() {
   512  	*x = ChaincodeEventsRequest{}
   513  	if protoimpl.UnsafeEnabled {
   514  		mi := &file_chaincode_proto_msgTypes[7]
   515  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   516  		ms.StoreMessageInfo(mi)
   517  	}
   518  }
   519  
   520  func (x *ChaincodeEventsRequest) String() string {
   521  	return protoimpl.X.MessageStringOf(x)
   522  }
   523  
   524  func (*ChaincodeEventsRequest) ProtoMessage() {}
   525  
   526  func (x *ChaincodeEventsRequest) ProtoReflect() protoreflect.Message {
   527  	mi := &file_chaincode_proto_msgTypes[7]
   528  	if protoimpl.UnsafeEnabled && x != nil {
   529  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   530  		if ms.LoadMessageInfo() == nil {
   531  			ms.StoreMessageInfo(mi)
   532  		}
   533  		return ms
   534  	}
   535  	return mi.MessageOf(x)
   536  }
   537  
   538  // Deprecated: Use ChaincodeEventsRequest.ProtoReflect.Descriptor instead.
   539  func (*ChaincodeEventsRequest) Descriptor() ([]byte, []int) {
   540  	return file_chaincode_proto_rawDescGZIP(), []int{7}
   541  }
   542  
   543  func (x *ChaincodeEventsRequest) GetLocator() *ChaincodeLocator {
   544  	if x != nil {
   545  		return x.Locator
   546  	}
   547  	return nil
   548  }
   549  
   550  func (x *ChaincodeEventsRequest) GetFromBlock() *BlockLimit {
   551  	if x != nil {
   552  		return x.FromBlock
   553  	}
   554  	return nil
   555  }
   556  
   557  func (x *ChaincodeEventsRequest) GetToBlock() *BlockLimit {
   558  	if x != nil {
   559  		return x.ToBlock
   560  	}
   561  	return nil
   562  }
   563  
   564  func (x *ChaincodeEventsRequest) GetEventName() []string {
   565  	if x != nil {
   566  		return x.EventName
   567  	}
   568  	return nil
   569  }
   570  
   571  func (x *ChaincodeEventsRequest) GetLimit() uint32 {
   572  	if x != nil {
   573  		return x.Limit
   574  	}
   575  	return 0
   576  }
   577  
   578  type ChaincodeInstanceExecRequest struct {
   579  	state         protoimpl.MessageState
   580  	sizeCache     protoimpl.SizeCache
   581  	unknownFields protoimpl.UnknownFields
   582  
   583  	Type  InvocationType  `protobuf:"varint,1,opt,name=type,proto3,enum=cckit.gateway.InvocationType" json:"type,omitempty"`
   584  	Input *ChaincodeInput `protobuf:"bytes,2,opt,name=input,proto3" json:"input,omitempty"`
   585  }
   586  
   587  func (x *ChaincodeInstanceExecRequest) Reset() {
   588  	*x = ChaincodeInstanceExecRequest{}
   589  	if protoimpl.UnsafeEnabled {
   590  		mi := &file_chaincode_proto_msgTypes[8]
   591  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   592  		ms.StoreMessageInfo(mi)
   593  	}
   594  }
   595  
   596  func (x *ChaincodeInstanceExecRequest) String() string {
   597  	return protoimpl.X.MessageStringOf(x)
   598  }
   599  
   600  func (*ChaincodeInstanceExecRequest) ProtoMessage() {}
   601  
   602  func (x *ChaincodeInstanceExecRequest) ProtoReflect() protoreflect.Message {
   603  	mi := &file_chaincode_proto_msgTypes[8]
   604  	if protoimpl.UnsafeEnabled && x != nil {
   605  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   606  		if ms.LoadMessageInfo() == nil {
   607  			ms.StoreMessageInfo(mi)
   608  		}
   609  		return ms
   610  	}
   611  	return mi.MessageOf(x)
   612  }
   613  
   614  // Deprecated: Use ChaincodeInstanceExecRequest.ProtoReflect.Descriptor instead.
   615  func (*ChaincodeInstanceExecRequest) Descriptor() ([]byte, []int) {
   616  	return file_chaincode_proto_rawDescGZIP(), []int{8}
   617  }
   618  
   619  func (x *ChaincodeInstanceExecRequest) GetType() InvocationType {
   620  	if x != nil {
   621  		return x.Type
   622  	}
   623  	return InvocationType_INVOCATION_TYPE_QUERY
   624  }
   625  
   626  func (x *ChaincodeInstanceExecRequest) GetInput() *ChaincodeInput {
   627  	if x != nil {
   628  		return x.Input
   629  	}
   630  	return nil
   631  }
   632  
   633  type ChaincodeInstanceQueryRequest struct {
   634  	state         protoimpl.MessageState
   635  	sizeCache     protoimpl.SizeCache
   636  	unknownFields protoimpl.UnknownFields
   637  
   638  	Input *ChaincodeInput `protobuf:"bytes,1,opt,name=input,proto3" json:"input,omitempty"`
   639  }
   640  
   641  func (x *ChaincodeInstanceQueryRequest) Reset() {
   642  	*x = ChaincodeInstanceQueryRequest{}
   643  	if protoimpl.UnsafeEnabled {
   644  		mi := &file_chaincode_proto_msgTypes[9]
   645  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   646  		ms.StoreMessageInfo(mi)
   647  	}
   648  }
   649  
   650  func (x *ChaincodeInstanceQueryRequest) String() string {
   651  	return protoimpl.X.MessageStringOf(x)
   652  }
   653  
   654  func (*ChaincodeInstanceQueryRequest) ProtoMessage() {}
   655  
   656  func (x *ChaincodeInstanceQueryRequest) ProtoReflect() protoreflect.Message {
   657  	mi := &file_chaincode_proto_msgTypes[9]
   658  	if protoimpl.UnsafeEnabled && x != nil {
   659  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   660  		if ms.LoadMessageInfo() == nil {
   661  			ms.StoreMessageInfo(mi)
   662  		}
   663  		return ms
   664  	}
   665  	return mi.MessageOf(x)
   666  }
   667  
   668  // Deprecated: Use ChaincodeInstanceQueryRequest.ProtoReflect.Descriptor instead.
   669  func (*ChaincodeInstanceQueryRequest) Descriptor() ([]byte, []int) {
   670  	return file_chaincode_proto_rawDescGZIP(), []int{9}
   671  }
   672  
   673  func (x *ChaincodeInstanceQueryRequest) GetInput() *ChaincodeInput {
   674  	if x != nil {
   675  		return x.Input
   676  	}
   677  	return nil
   678  }
   679  
   680  type ChaincodeInstanceInvokeRequest struct {
   681  	state         protoimpl.MessageState
   682  	sizeCache     protoimpl.SizeCache
   683  	unknownFields protoimpl.UnknownFields
   684  
   685  	Input *ChaincodeInput `protobuf:"bytes,1,opt,name=input,proto3" json:"input,omitempty"`
   686  }
   687  
   688  func (x *ChaincodeInstanceInvokeRequest) Reset() {
   689  	*x = ChaincodeInstanceInvokeRequest{}
   690  	if protoimpl.UnsafeEnabled {
   691  		mi := &file_chaincode_proto_msgTypes[10]
   692  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   693  		ms.StoreMessageInfo(mi)
   694  	}
   695  }
   696  
   697  func (x *ChaincodeInstanceInvokeRequest) String() string {
   698  	return protoimpl.X.MessageStringOf(x)
   699  }
   700  
   701  func (*ChaincodeInstanceInvokeRequest) ProtoMessage() {}
   702  
   703  func (x *ChaincodeInstanceInvokeRequest) ProtoReflect() protoreflect.Message {
   704  	mi := &file_chaincode_proto_msgTypes[10]
   705  	if protoimpl.UnsafeEnabled && x != nil {
   706  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   707  		if ms.LoadMessageInfo() == nil {
   708  			ms.StoreMessageInfo(mi)
   709  		}
   710  		return ms
   711  	}
   712  	return mi.MessageOf(x)
   713  }
   714  
   715  // Deprecated: Use ChaincodeInstanceInvokeRequest.ProtoReflect.Descriptor instead.
   716  func (*ChaincodeInstanceInvokeRequest) Descriptor() ([]byte, []int) {
   717  	return file_chaincode_proto_rawDescGZIP(), []int{10}
   718  }
   719  
   720  func (x *ChaincodeInstanceInvokeRequest) GetInput() *ChaincodeInput {
   721  	if x != nil {
   722  		return x.Input
   723  	}
   724  	return nil
   725  }
   726  
   727  type ChaincodeInstanceEventsStreamRequest struct {
   728  	state         protoimpl.MessageState
   729  	sizeCache     protoimpl.SizeCache
   730  	unknownFields protoimpl.UnknownFields
   731  
   732  	FromBlock *BlockLimit `protobuf:"bytes,1,opt,name=from_block,json=fromBlock,proto3" json:"from_block,omitempty"`
   733  	ToBlock   *BlockLimit `protobuf:"bytes,2,opt,name=to_block,json=toBlock,proto3" json:"to_block,omitempty"`
   734  	EventName []string    `protobuf:"bytes,3,rep,name=event_name,json=eventName,proto3" json:"event_name,omitempty"`
   735  }
   736  
   737  func (x *ChaincodeInstanceEventsStreamRequest) Reset() {
   738  	*x = ChaincodeInstanceEventsStreamRequest{}
   739  	if protoimpl.UnsafeEnabled {
   740  		mi := &file_chaincode_proto_msgTypes[11]
   741  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   742  		ms.StoreMessageInfo(mi)
   743  	}
   744  }
   745  
   746  func (x *ChaincodeInstanceEventsStreamRequest) String() string {
   747  	return protoimpl.X.MessageStringOf(x)
   748  }
   749  
   750  func (*ChaincodeInstanceEventsStreamRequest) ProtoMessage() {}
   751  
   752  func (x *ChaincodeInstanceEventsStreamRequest) ProtoReflect() protoreflect.Message {
   753  	mi := &file_chaincode_proto_msgTypes[11]
   754  	if protoimpl.UnsafeEnabled && x != nil {
   755  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   756  		if ms.LoadMessageInfo() == nil {
   757  			ms.StoreMessageInfo(mi)
   758  		}
   759  		return ms
   760  	}
   761  	return mi.MessageOf(x)
   762  }
   763  
   764  // Deprecated: Use ChaincodeInstanceEventsStreamRequest.ProtoReflect.Descriptor instead.
   765  func (*ChaincodeInstanceEventsStreamRequest) Descriptor() ([]byte, []int) {
   766  	return file_chaincode_proto_rawDescGZIP(), []int{11}
   767  }
   768  
   769  func (x *ChaincodeInstanceEventsStreamRequest) GetFromBlock() *BlockLimit {
   770  	if x != nil {
   771  		return x.FromBlock
   772  	}
   773  	return nil
   774  }
   775  
   776  func (x *ChaincodeInstanceEventsStreamRequest) GetToBlock() *BlockLimit {
   777  	if x != nil {
   778  		return x.ToBlock
   779  	}
   780  	return nil
   781  }
   782  
   783  func (x *ChaincodeInstanceEventsStreamRequest) GetEventName() []string {
   784  	if x != nil {
   785  		return x.EventName
   786  	}
   787  	return nil
   788  }
   789  
   790  type ChaincodeInstanceEventsRequest struct {
   791  	state         protoimpl.MessageState
   792  	sizeCache     protoimpl.SizeCache
   793  	unknownFields protoimpl.UnknownFields
   794  
   795  	FromBlock *BlockLimit `protobuf:"bytes,1,opt,name=from_block,json=fromBlock,proto3" json:"from_block,omitempty"`
   796  	ToBlock   *BlockLimit `protobuf:"bytes,2,opt,name=to_block,json=toBlock,proto3" json:"to_block,omitempty"`
   797  	EventName []string    `protobuf:"bytes,3,rep,name=event_name,json=eventName,proto3" json:"event_name,omitempty"`
   798  	Limit     uint32      `protobuf:"varint,4,opt,name=limit,proto3" json:"limit,omitempty"`
   799  }
   800  
   801  func (x *ChaincodeInstanceEventsRequest) Reset() {
   802  	*x = ChaincodeInstanceEventsRequest{}
   803  	if protoimpl.UnsafeEnabled {
   804  		mi := &file_chaincode_proto_msgTypes[12]
   805  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   806  		ms.StoreMessageInfo(mi)
   807  	}
   808  }
   809  
   810  func (x *ChaincodeInstanceEventsRequest) String() string {
   811  	return protoimpl.X.MessageStringOf(x)
   812  }
   813  
   814  func (*ChaincodeInstanceEventsRequest) ProtoMessage() {}
   815  
   816  func (x *ChaincodeInstanceEventsRequest) ProtoReflect() protoreflect.Message {
   817  	mi := &file_chaincode_proto_msgTypes[12]
   818  	if protoimpl.UnsafeEnabled && x != nil {
   819  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   820  		if ms.LoadMessageInfo() == nil {
   821  			ms.StoreMessageInfo(mi)
   822  		}
   823  		return ms
   824  	}
   825  	return mi.MessageOf(x)
   826  }
   827  
   828  // Deprecated: Use ChaincodeInstanceEventsRequest.ProtoReflect.Descriptor instead.
   829  func (*ChaincodeInstanceEventsRequest) Descriptor() ([]byte, []int) {
   830  	return file_chaincode_proto_rawDescGZIP(), []int{12}
   831  }
   832  
   833  func (x *ChaincodeInstanceEventsRequest) GetFromBlock() *BlockLimit {
   834  	if x != nil {
   835  		return x.FromBlock
   836  	}
   837  	return nil
   838  }
   839  
   840  func (x *ChaincodeInstanceEventsRequest) GetToBlock() *BlockLimit {
   841  	if x != nil {
   842  		return x.ToBlock
   843  	}
   844  	return nil
   845  }
   846  
   847  func (x *ChaincodeInstanceEventsRequest) GetEventName() []string {
   848  	if x != nil {
   849  		return x.EventName
   850  	}
   851  	return nil
   852  }
   853  
   854  func (x *ChaincodeInstanceEventsRequest) GetLimit() uint32 {
   855  	if x != nil {
   856  		return x.Limit
   857  	}
   858  	return 0
   859  }
   860  
   861  type ChaincodeEvents struct {
   862  	state         protoimpl.MessageState
   863  	sizeCache     protoimpl.SizeCache
   864  	unknownFields protoimpl.UnknownFields
   865  
   866  	Locator   *ChaincodeLocator `protobuf:"bytes,1,opt,name=locator,proto3" json:"locator,omitempty"`
   867  	FromBlock *BlockLimit       `protobuf:"bytes,2,opt,name=from_block,json=fromBlock,proto3" json:"from_block,omitempty"`
   868  	ToBlock   *BlockLimit       `protobuf:"bytes,3,opt,name=to_block,json=toBlock,proto3" json:"to_block,omitempty"`
   869  	Items     []*ChaincodeEvent `protobuf:"bytes,4,rep,name=items,proto3" json:"items,omitempty"`
   870  }
   871  
   872  func (x *ChaincodeEvents) Reset() {
   873  	*x = ChaincodeEvents{}
   874  	if protoimpl.UnsafeEnabled {
   875  		mi := &file_chaincode_proto_msgTypes[13]
   876  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   877  		ms.StoreMessageInfo(mi)
   878  	}
   879  }
   880  
   881  func (x *ChaincodeEvents) String() string {
   882  	return protoimpl.X.MessageStringOf(x)
   883  }
   884  
   885  func (*ChaincodeEvents) ProtoMessage() {}
   886  
   887  func (x *ChaincodeEvents) ProtoReflect() protoreflect.Message {
   888  	mi := &file_chaincode_proto_msgTypes[13]
   889  	if protoimpl.UnsafeEnabled && x != nil {
   890  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   891  		if ms.LoadMessageInfo() == nil {
   892  			ms.StoreMessageInfo(mi)
   893  		}
   894  		return ms
   895  	}
   896  	return mi.MessageOf(x)
   897  }
   898  
   899  // Deprecated: Use ChaincodeEvents.ProtoReflect.Descriptor instead.
   900  func (*ChaincodeEvents) Descriptor() ([]byte, []int) {
   901  	return file_chaincode_proto_rawDescGZIP(), []int{13}
   902  }
   903  
   904  func (x *ChaincodeEvents) GetLocator() *ChaincodeLocator {
   905  	if x != nil {
   906  		return x.Locator
   907  	}
   908  	return nil
   909  }
   910  
   911  func (x *ChaincodeEvents) GetFromBlock() *BlockLimit {
   912  	if x != nil {
   913  		return x.FromBlock
   914  	}
   915  	return nil
   916  }
   917  
   918  func (x *ChaincodeEvents) GetToBlock() *BlockLimit {
   919  	if x != nil {
   920  		return x.ToBlock
   921  	}
   922  	return nil
   923  }
   924  
   925  func (x *ChaincodeEvents) GetItems() []*ChaincodeEvent {
   926  	if x != nil {
   927  		return x.Items
   928  	}
   929  	return nil
   930  }
   931  
   932  type RawJson struct {
   933  	state         protoimpl.MessageState
   934  	sizeCache     protoimpl.SizeCache
   935  	unknownFields protoimpl.UnknownFields
   936  
   937  	Value []byte `protobuf:"bytes,1,opt,name=value,proto3" json:"value,omitempty"`
   938  }
   939  
   940  func (x *RawJson) Reset() {
   941  	*x = RawJson{}
   942  	if protoimpl.UnsafeEnabled {
   943  		mi := &file_chaincode_proto_msgTypes[14]
   944  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   945  		ms.StoreMessageInfo(mi)
   946  	}
   947  }
   948  
   949  func (x *RawJson) String() string {
   950  	return protoimpl.X.MessageStringOf(x)
   951  }
   952  
   953  func (*RawJson) ProtoMessage() {}
   954  
   955  func (x *RawJson) ProtoReflect() protoreflect.Message {
   956  	mi := &file_chaincode_proto_msgTypes[14]
   957  	if protoimpl.UnsafeEnabled && x != nil {
   958  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   959  		if ms.LoadMessageInfo() == nil {
   960  			ms.StoreMessageInfo(mi)
   961  		}
   962  		return ms
   963  	}
   964  	return mi.MessageOf(x)
   965  }
   966  
   967  // Deprecated: Use RawJson.ProtoReflect.Descriptor instead.
   968  func (*RawJson) Descriptor() ([]byte, []int) {
   969  	return file_chaincode_proto_rawDescGZIP(), []int{14}
   970  }
   971  
   972  func (x *RawJson) GetValue() []byte {
   973  	if x != nil {
   974  		return x.Value
   975  	}
   976  	return nil
   977  }
   978  
   979  type ChaincodeEvent struct {
   980  	state         protoimpl.MessageState
   981  	sizeCache     protoimpl.SizeCache
   982  	unknownFields protoimpl.UnknownFields
   983  
   984  	Event       *peer.ChaincodeEvent   `protobuf:"bytes,1,opt,name=event,proto3" json:"event,omitempty"`
   985  	Block       uint64                 `protobuf:"varint,2,opt,name=block,proto3" json:"block,omitempty"`
   986  	TxTimestamp *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=tx_timestamp,json=txTimestamp,proto3" json:"tx_timestamp,omitempty"`
   987  	Payload     *RawJson               `protobuf:"bytes,4,opt,name=payload,proto3" json:"payload,omitempty"`
   988  }
   989  
   990  func (x *ChaincodeEvent) Reset() {
   991  	*x = ChaincodeEvent{}
   992  	if protoimpl.UnsafeEnabled {
   993  		mi := &file_chaincode_proto_msgTypes[15]
   994  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   995  		ms.StoreMessageInfo(mi)
   996  	}
   997  }
   998  
   999  func (x *ChaincodeEvent) String() string {
  1000  	return protoimpl.X.MessageStringOf(x)
  1001  }
  1002  
  1003  func (*ChaincodeEvent) ProtoMessage() {}
  1004  
  1005  func (x *ChaincodeEvent) ProtoReflect() protoreflect.Message {
  1006  	mi := &file_chaincode_proto_msgTypes[15]
  1007  	if protoimpl.UnsafeEnabled && x != nil {
  1008  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1009  		if ms.LoadMessageInfo() == nil {
  1010  			ms.StoreMessageInfo(mi)
  1011  		}
  1012  		return ms
  1013  	}
  1014  	return mi.MessageOf(x)
  1015  }
  1016  
  1017  // Deprecated: Use ChaincodeEvent.ProtoReflect.Descriptor instead.
  1018  func (*ChaincodeEvent) Descriptor() ([]byte, []int) {
  1019  	return file_chaincode_proto_rawDescGZIP(), []int{15}
  1020  }
  1021  
  1022  func (x *ChaincodeEvent) GetEvent() *peer.ChaincodeEvent {
  1023  	if x != nil {
  1024  		return x.Event
  1025  	}
  1026  	return nil
  1027  }
  1028  
  1029  func (x *ChaincodeEvent) GetBlock() uint64 {
  1030  	if x != nil {
  1031  		return x.Block
  1032  	}
  1033  	return 0
  1034  }
  1035  
  1036  func (x *ChaincodeEvent) GetTxTimestamp() *timestamppb.Timestamp {
  1037  	if x != nil {
  1038  		return x.TxTimestamp
  1039  	}
  1040  	return nil
  1041  }
  1042  
  1043  func (x *ChaincodeEvent) GetPayload() *RawJson {
  1044  	if x != nil {
  1045  		return x.Payload
  1046  	}
  1047  	return nil
  1048  }
  1049  
  1050  var File_chaincode_proto protoreflect.FileDescriptor
  1051  
  1052  var file_chaincode_proto_rawDesc = []byte{
  1053  	0x0a, 0x0f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
  1054  	0x6f, 0x12, 0x0d, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
  1055  	0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e,
  1056  	0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f,
  1057  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f,
  1058  	0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
  1059  	0x2f, 0x68, 0x79, 0x70, 0x65, 0x72, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x72, 0x2f, 0x66, 0x61, 0x62,
  1060  	0x72, 0x69, 0x63, 0x2f, 0x70, 0x65, 0x65, 0x72, 0x2f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61,
  1061  	0x6c, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  1062  	0x1a, 0x2d, 0x68, 0x79, 0x70, 0x65, 0x72, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x72, 0x2f, 0x66, 0x61,
  1063  	0x62, 0x72, 0x69, 0x63, 0x2f, 0x70, 0x65, 0x65, 0x72, 0x2f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x63,
  1064  	0x6f, 0x64, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
  1065  	0x2b, 0x6d, 0x77, 0x69, 0x74, 0x6b, 0x6f, 0x77, 0x2f, 0x67, 0x6f, 0x2d, 0x70, 0x72, 0x6f, 0x74,
  1066  	0x6f, 0x2d, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x2f, 0x76, 0x61, 0x6c,
  1067  	0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x5a, 0x0a, 0x10,
  1068  	0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72,
  1069  	0x12, 0x24, 0x0a, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20,
  1070  	0x01, 0x28, 0x09, 0x42, 0x06, 0xe2, 0xdf, 0x1f, 0x02, 0x58, 0x01, 0x52, 0x09, 0x63, 0x68, 0x61,
  1071  	0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x20, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
  1072  	0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0xe2, 0xdf, 0x1f, 0x02, 0x58, 0x01, 0x52,
  1073  	0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x22, 0xae, 0x01, 0x0a, 0x0e, 0x43, 0x68, 0x61,
  1074  	0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x61,
  1075  	0x72, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12,
  1076  	0x4a, 0x0a, 0x09, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x03,
  1077  	0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
  1078  	0x61, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x70, 0x75,
  1079  	0x74, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79,
  1080  	0x52, 0x09, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x65, 0x6e, 0x74, 0x1a, 0x3c, 0x0a, 0x0e, 0x54,
  1081  	0x72, 0x61, 0x6e, 0x73, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a,
  1082  	0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
  1083  	0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05,
  1084  	0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xc1, 0x01, 0x0a, 0x14, 0x43, 0x68,
  1085  	0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x65, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65,
  1086  	0x73, 0x74, 0x12, 0x41, 0x0a, 0x07, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20,
  1087  	0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65,
  1088  	0x77, 0x61, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x63,
  1089  	0x61, 0x74, 0x6f, 0x72, 0x42, 0x06, 0xe2, 0xdf, 0x1f, 0x02, 0x20, 0x01, 0x52, 0x07, 0x6c, 0x6f,
  1090  	0x63, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x31, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20,
  1091  	0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65,
  1092  	0x77, 0x61, 0x79, 0x2e, 0x49, 0x6e, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79,
  1093  	0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x33, 0x0a, 0x05, 0x69, 0x6e, 0x70, 0x75,
  1094  	0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e,
  1095  	0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64,
  1096  	0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x05, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x22, 0x8f, 0x01,
  1097  	0x0a, 0x15, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79,
  1098  	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x07, 0x6c, 0x6f, 0x63, 0x61, 0x74,
  1099  	0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74,
  1100  	0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f,
  1101  	0x64, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x06, 0xe2, 0xdf, 0x1f, 0x02, 0x20,
  1102  	0x01, 0x52, 0x07, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x33, 0x0a, 0x05, 0x69, 0x6e,
  1103  	0x70, 0x75, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x63, 0x6b, 0x69,
  1104  	0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63,
  1105  	0x6f, 0x64, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x05, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x22,
  1106  	0x90, 0x01, 0x0a, 0x16, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x76,
  1107  	0x6f, 0x6b, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x07, 0x6c, 0x6f,
  1108  	0x63, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x63,
  1109  	0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x69,
  1110  	0x6e, 0x63, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x06, 0xe2, 0xdf,
  1111  	0x1f, 0x02, 0x20, 0x01, 0x52, 0x07, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x33, 0x0a,
  1112  	0x05, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63,
  1113  	0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x68, 0x61,
  1114  	0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x05, 0x69, 0x6e, 0x70,
  1115  	0x75, 0x74, 0x22, 0x1e, 0x0a, 0x0a, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4c, 0x69, 0x6d, 0x69, 0x74,
  1116  	0x12, 0x10, 0x0a, 0x03, 0x6e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x6e,
  1117  	0x75, 0x6d, 0x22, 0xf0, 0x01, 0x0a, 0x1c, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65,
  1118  	0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x71, 0x75,
  1119  	0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x07, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01,
  1120  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74,
  1121  	0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x4c, 0x6f,
  1122  	0x63, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x06, 0xe2, 0xdf, 0x1f, 0x02, 0x20, 0x01, 0x52, 0x07, 0x6c,
  1123  	0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x38, 0x0a, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x62,
  1124  	0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x63, 0x6b,
  1125  	0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b,
  1126  	0x4c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x09, 0x66, 0x72, 0x6f, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b,
  1127  	0x12, 0x34, 0x0a, 0x08, 0x74, 0x6f, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x03, 0x20, 0x01,
  1128  	0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
  1129  	0x61, 0x79, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x07, 0x74,
  1130  	0x6f, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f,
  1131  	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x65, 0x76, 0x65, 0x6e,
  1132  	0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x80, 0x02, 0x0a, 0x16, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63,
  1133  	0x6f, 0x64, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
  1134  	0x12, 0x41, 0x0a, 0x07, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28,
  1135  	0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
  1136  	0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74,
  1137  	0x6f, 0x72, 0x42, 0x06, 0xe2, 0xdf, 0x1f, 0x02, 0x20, 0x01, 0x52, 0x07, 0x6c, 0x6f, 0x63, 0x61,
  1138  	0x74, 0x6f, 0x72, 0x12, 0x38, 0x0a, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x62, 0x6c, 0x6f, 0x63,
  1139  	0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e,
  1140  	0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4c, 0x69, 0x6d,
  1141  	0x69, 0x74, 0x52, 0x09, 0x66, 0x72, 0x6f, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x34, 0x0a,
  1142  	0x08, 0x74, 0x6f, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32,
  1143  	0x19, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e,
  1144  	0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x07, 0x74, 0x6f, 0x42, 0x6c,
  1145  	0x6f, 0x63, 0x6b, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d,
  1146  	0x65, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x61,
  1147  	0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28,
  1148  	0x0d, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0x86, 0x01, 0x0a, 0x1c, 0x43, 0x68, 0x61,
  1149  	0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x45, 0x78,
  1150  	0x65, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x04, 0x74, 0x79, 0x70,
  1151  	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e,
  1152  	0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x49, 0x6e, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69,
  1153  	0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x33, 0x0a, 0x05,
  1154  	0x69, 0x6e, 0x70, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x63,
  1155  	0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x69,
  1156  	0x6e, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x05, 0x69, 0x6e, 0x70, 0x75,
  1157  	0x74, 0x22, 0x54, 0x0a, 0x1d, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e,
  1158  	0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65,
  1159  	0x73, 0x74, 0x12, 0x33, 0x0a, 0x05, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
  1160  	0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
  1161  	0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74,
  1162  	0x52, 0x05, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x22, 0x55, 0x0a, 0x1e, 0x43, 0x68, 0x61, 0x69, 0x6e,
  1163  	0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x6e, 0x76, 0x6f,
  1164  	0x6b, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x33, 0x0a, 0x05, 0x69, 0x6e, 0x70,
  1165  	0x75, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74,
  1166  	0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f,
  1167  	0x64, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x05, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x22, 0xb5,
  1168  	0x01, 0x0a, 0x24, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x73, 0x74,
  1169  	0x61, 0x6e, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d,
  1170  	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x5f,
  1171  	0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x63,
  1172  	0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x42, 0x6c, 0x6f, 0x63,
  1173  	0x6b, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x09, 0x66, 0x72, 0x6f, 0x6d, 0x42, 0x6c, 0x6f, 0x63,
  1174  	0x6b, 0x12, 0x34, 0x0a, 0x08, 0x74, 0x6f, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x02, 0x20,
  1175  	0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65,
  1176  	0x77, 0x61, 0x79, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x07,
  1177  	0x74, 0x6f, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74,
  1178  	0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x65, 0x76, 0x65,
  1179  	0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xc5, 0x01, 0x0a, 0x1e, 0x43, 0x68, 0x61, 0x69, 0x6e,
  1180  	0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e,
  1181  	0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x66, 0x72, 0x6f,
  1182  	0x6d, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e,
  1183  	0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x42, 0x6c,
  1184  	0x6f, 0x63, 0x6b, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x09, 0x66, 0x72, 0x6f, 0x6d, 0x42, 0x6c,
  1185  	0x6f, 0x63, 0x6b, 0x12, 0x34, 0x0a, 0x08, 0x74, 0x6f, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18,
  1186  	0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61,
  1187  	0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4c, 0x69, 0x6d, 0x69, 0x74,
  1188  	0x52, 0x07, 0x74, 0x6f, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x76, 0x65,
  1189  	0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x65,
  1190  	0x76, 0x65, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69,
  1191  	0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0xf9,
  1192  	0x01, 0x0a, 0x0f, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x45, 0x76, 0x65, 0x6e,
  1193  	0x74, 0x73, 0x12, 0x41, 0x0a, 0x07, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20,
  1194  	0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65,
  1195  	0x77, 0x61, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x4c, 0x6f, 0x63,
  1196  	0x61, 0x74, 0x6f, 0x72, 0x42, 0x06, 0xe2, 0xdf, 0x1f, 0x02, 0x20, 0x01, 0x52, 0x07, 0x6c, 0x6f,
  1197  	0x63, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x38, 0x0a, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x62, 0x6c,
  1198  	0x6f, 0x63, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x63, 0x6b, 0x69,
  1199  	0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4c,
  1200  	0x69, 0x6d, 0x69, 0x74, 0x52, 0x09, 0x66, 0x72, 0x6f, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12,
  1201  	0x34, 0x0a, 0x08, 0x74, 0x6f, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28,
  1202  	0x0b, 0x32, 0x19, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
  1203  	0x79, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x07, 0x74, 0x6f,
  1204  	0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x33, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x04,
  1205  	0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74,
  1206  	0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x45, 0x76,
  1207  	0x65, 0x6e, 0x74, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x1f, 0x0a, 0x07, 0x52, 0x61,
  1208  	0x77, 0x4a, 0x73, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01,
  1209  	0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xc5, 0x01, 0x0a, 0x0e,
  1210  	0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x2c,
  1211  	0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e,
  1212  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65,
  1213  	0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05,
  1214  	0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x62, 0x6c, 0x6f,
  1215  	0x63, 0x6b, 0x12, 0x3d, 0x0a, 0x0c, 0x74, 0x78, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
  1216  	0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  1217  	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73,
  1218  	0x74, 0x61, 0x6d, 0x70, 0x52, 0x0b, 0x74, 0x78, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
  1219  	0x70, 0x12, 0x30, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x04, 0x20, 0x01,
  1220  	0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
  1221  	0x61, 0x79, 0x2e, 0x52, 0x61, 0x77, 0x4a, 0x73, 0x6f, 0x6e, 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c,
  1222  	0x6f, 0x61, 0x64, 0x2a, 0x47, 0x0a, 0x0e, 0x49, 0x6e, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
  1223  	0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x15, 0x49, 0x4e, 0x56, 0x4f, 0x43, 0x41, 0x54,
  1224  	0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x51, 0x55, 0x45, 0x52, 0x59, 0x10, 0x00,
  1225  	0x12, 0x1a, 0x0a, 0x16, 0x49, 0x4e, 0x56, 0x4f, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54,
  1226  	0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x4f, 0x4b, 0x45, 0x10, 0x01, 0x32, 0x95, 0x04, 0x0a,
  1227  	0x10, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
  1228  	0x65, 0x12, 0x59, 0x0a, 0x04, 0x45, 0x78, 0x65, 0x63, 0x12, 0x23, 0x2e, 0x63, 0x63, 0x6b, 0x69,
  1229  	0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63,
  1230  	0x6f, 0x64, 0x65, 0x45, 0x78, 0x65, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x10,
  1231  	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
  1232  	0x22, 0x1a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x14, 0x22, 0x0f, 0x2f, 0x63, 0x68, 0x61, 0x69, 0x6e,
  1233  	0x63, 0x6f, 0x64, 0x65, 0x2f, 0x65, 0x78, 0x65, 0x63, 0x3a, 0x01, 0x2a, 0x12, 0x59, 0x0a, 0x05,
  1234  	0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x24, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61,
  1235  	0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x51,
  1236  	0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x10, 0x2e, 0x70, 0x72,
  1237  	0x6f, 0x74, 0x6f, 0x73, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x18, 0x82,
  1238  	0xd3, 0xe4, 0x93, 0x02, 0x12, 0x12, 0x10, 0x2f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64,
  1239  	0x65, 0x2f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x5f, 0x0a, 0x06, 0x49, 0x6e, 0x76, 0x6f, 0x6b,
  1240  	0x65, 0x12, 0x25, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
  1241  	0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x76, 0x6f, 0x6b,
  1242  	0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x10, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  1243  	0x73, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1c, 0x82, 0xd3, 0xe4, 0x93,
  1244  	0x02, 0x16, 0x22, 0x11, 0x2f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x2f, 0x69,
  1245  	0x6e, 0x76, 0x6f, 0x6b, 0x65, 0x3a, 0x01, 0x2a, 0x12, 0x7e, 0x0a, 0x0c, 0x45, 0x76, 0x65, 0x6e,
  1246  	0x74, 0x73, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x2b, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74,
  1247  	0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f,
  1248  	0x64, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x52, 0x65,
  1249  	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61,
  1250  	0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x45,
  1251  	0x76, 0x65, 0x6e, 0x74, 0x22, 0x20, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1a, 0x12, 0x18, 0x2f, 0x63,
  1252  	0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x2f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2d,
  1253  	0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x30, 0x01, 0x12, 0x6a, 0x0a, 0x06, 0x45, 0x76, 0x65, 0x6e,
  1254  	0x74, 0x73, 0x12, 0x25, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77,
  1255  	0x61, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x45, 0x76, 0x65, 0x6e,
  1256  	0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x63, 0x63, 0x6b, 0x69,
  1257  	0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63,
  1258  	0x6f, 0x64, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x19, 0x82, 0xd3, 0xe4, 0x93, 0x02,
  1259  	0x13, 0x12, 0x11, 0x2f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x2f, 0x65, 0x76,
  1260  	0x65, 0x6e, 0x74, 0x73, 0x32, 0x84, 0x02, 0x0a, 0x16, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f,
  1261  	0x64, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12,
  1262  	0x7e, 0x0a, 0x0c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12,
  1263  	0x2b, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e,
  1264  	0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x53,
  1265  	0x74, 0x72, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63,
  1266  	0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x68, 0x61,
  1267  	0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x22, 0x20, 0x82, 0xd3, 0xe4,
  1268  	0x93, 0x02, 0x1a, 0x12, 0x18, 0x2f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x2f,
  1269  	0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2d, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x30, 0x01, 0x12,
  1270  	0x6a, 0x0a, 0x06, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x25, 0x2e, 0x63, 0x63, 0x6b, 0x69,
  1271  	0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63,
  1272  	0x6f, 0x64, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
  1273  	0x1a, 0x1e, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
  1274  	0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73,
  1275  	0x22, 0x19, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x13, 0x12, 0x11, 0x2f, 0x63, 0x68, 0x61, 0x69, 0x6e,
  1276  	0x63, 0x6f, 0x64, 0x65, 0x2f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x32, 0xf3, 0x04, 0x0a, 0x18,
  1277  	0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63,
  1278  	0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x6a, 0x0a, 0x04, 0x45, 0x78, 0x65, 0x63,
  1279  	0x12, 0x2b, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
  1280  	0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e,
  1281  	0x63, 0x65, 0x45, 0x78, 0x65, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x10, 0x2e,
  1282  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
  1283  	0x23, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1d, 0x22, 0x18, 0x2f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x63,
  1284  	0x6f, 0x64, 0x65, 0x2d, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2f, 0x65, 0x78, 0x65,
  1285  	0x63, 0x3a, 0x01, 0x2a, 0x12, 0x6a, 0x0a, 0x05, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x2c, 0x2e,
  1286  	0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x68,
  1287  	0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x51,
  1288  	0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x10, 0x2e, 0x70, 0x72,
  1289  	0x6f, 0x74, 0x6f, 0x73, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x21, 0x82,
  1290  	0xd3, 0xe4, 0x93, 0x02, 0x1b, 0x12, 0x19, 0x2f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64,
  1291  	0x65, 0x2d, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2f, 0x71, 0x75, 0x65, 0x72, 0x79,
  1292  	0x12, 0x70, 0x0a, 0x06, 0x49, 0x6e, 0x76, 0x6f, 0x6b, 0x65, 0x12, 0x2d, 0x2e, 0x63, 0x63, 0x6b,
  1293  	0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e,
  1294  	0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x6e, 0x76, 0x6f,
  1295  	0x6b, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x10, 0x2e, 0x70, 0x72, 0x6f, 0x74,
  1296  	0x6f, 0x73, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x25, 0x82, 0xd3, 0xe4,
  1297  	0x93, 0x02, 0x1f, 0x22, 0x1a, 0x2f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x2d,
  1298  	0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2f, 0x69, 0x6e, 0x76, 0x6f, 0x6b, 0x65, 0x3a,
  1299  	0x01, 0x2a, 0x12, 0x8f, 0x01, 0x0a, 0x0c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x74, 0x72,
  1300  	0x65, 0x61, 0x6d, 0x12, 0x33, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65,
  1301  	0x77, 0x61, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x73,
  1302  	0x74, 0x61, 0x6e, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x74, 0x72, 0x65, 0x61,
  1303  	0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74,
  1304  	0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f,
  1305  	0x64, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x22, 0x29, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x23, 0x12,
  1306  	0x21, 0x2f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x2d, 0x69, 0x6e, 0x73, 0x74,
  1307  	0x61, 0x6e, 0x63, 0x65, 0x2f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2d, 0x73, 0x74, 0x72, 0x65,
  1308  	0x61, 0x6d, 0x30, 0x01, 0x12, 0x7b, 0x0a, 0x06, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2d,
  1309  	0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43,
  1310  	0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
  1311  	0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e,
  1312  	0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x68,
  1313  	0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x22, 0x82,
  1314  	0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x12, 0x1a, 0x2f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64,
  1315  	0x65, 0x2d, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2f, 0x65, 0x76, 0x65, 0x6e, 0x74,
  1316  	0x73, 0x32, 0xaf, 0x02, 0x0a, 0x1e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x49,
  1317  	0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72,
  1318  	0x76, 0x69, 0x63, 0x65, 0x12, 0x8f, 0x01, 0x0a, 0x0c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x53,
  1319  	0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x33, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61,
  1320  	0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x49,
  1321  	0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x74, 0x72,
  1322  	0x65, 0x61, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x63, 0x6b,
  1323  	0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e,
  1324  	0x63, 0x6f, 0x64, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x22, 0x29, 0x82, 0xd3, 0xe4, 0x93, 0x02,
  1325  	0x23, 0x12, 0x21, 0x2f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x2d, 0x69, 0x6e,
  1326  	0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2d, 0x73, 0x74,
  1327  	0x72, 0x65, 0x61, 0x6d, 0x30, 0x01, 0x12, 0x7b, 0x0a, 0x06, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73,
  1328  	0x12, 0x2d, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
  1329  	0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e,
  1330  	0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
  1331  	0x1e, 0x2e, 0x63, 0x63, 0x6b, 0x69, 0x74, 0x2e, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e,
  1332  	0x43, 0x68, 0x61, 0x69, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22,
  1333  	0x22, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x12, 0x1a, 0x2f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x63,
  1334  	0x6f, 0x64, 0x65, 0x2d, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2f, 0x65, 0x76, 0x65,
  1335  	0x6e, 0x74, 0x73, 0x42, 0x24, 0x5a, 0x22, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f,
  1336  	0x6d, 0x2f, 0x73, 0x37, 0x74, 0x65, 0x63, 0x68, 0x6c, 0x61, 0x62, 0x2f, 0x63, 0x63, 0x6b, 0x69,
  1337  	0x74, 0x2f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  1338  	0x33,
  1339  }
  1340  
  1341  var (
  1342  	file_chaincode_proto_rawDescOnce sync.Once
  1343  	file_chaincode_proto_rawDescData = file_chaincode_proto_rawDesc
  1344  )
  1345  
  1346  func file_chaincode_proto_rawDescGZIP() []byte {
  1347  	file_chaincode_proto_rawDescOnce.Do(func() {
  1348  		file_chaincode_proto_rawDescData = protoimpl.X.CompressGZIP(file_chaincode_proto_rawDescData)
  1349  	})
  1350  	return file_chaincode_proto_rawDescData
  1351  }
  1352  
  1353  var file_chaincode_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
  1354  var file_chaincode_proto_msgTypes = make([]protoimpl.MessageInfo, 17)
  1355  var file_chaincode_proto_goTypes = []interface{}{
  1356  	(InvocationType)(0),                          // 0: cckit.gateway.InvocationType
  1357  	(*ChaincodeLocator)(nil),                     // 1: cckit.gateway.ChaincodeLocator
  1358  	(*ChaincodeInput)(nil),                       // 2: cckit.gateway.ChaincodeInput
  1359  	(*ChaincodeExecRequest)(nil),                 // 3: cckit.gateway.ChaincodeExecRequest
  1360  	(*ChaincodeQueryRequest)(nil),                // 4: cckit.gateway.ChaincodeQueryRequest
  1361  	(*ChaincodeInvokeRequest)(nil),               // 5: cckit.gateway.ChaincodeInvokeRequest
  1362  	(*BlockLimit)(nil),                           // 6: cckit.gateway.BlockLimit
  1363  	(*ChaincodeEventsStreamRequest)(nil),         // 7: cckit.gateway.ChaincodeEventsStreamRequest
  1364  	(*ChaincodeEventsRequest)(nil),               // 8: cckit.gateway.ChaincodeEventsRequest
  1365  	(*ChaincodeInstanceExecRequest)(nil),         // 9: cckit.gateway.ChaincodeInstanceExecRequest
  1366  	(*ChaincodeInstanceQueryRequest)(nil),        // 10: cckit.gateway.ChaincodeInstanceQueryRequest
  1367  	(*ChaincodeInstanceInvokeRequest)(nil),       // 11: cckit.gateway.ChaincodeInstanceInvokeRequest
  1368  	(*ChaincodeInstanceEventsStreamRequest)(nil), // 12: cckit.gateway.ChaincodeInstanceEventsStreamRequest
  1369  	(*ChaincodeInstanceEventsRequest)(nil),       // 13: cckit.gateway.ChaincodeInstanceEventsRequest
  1370  	(*ChaincodeEvents)(nil),                      // 14: cckit.gateway.ChaincodeEvents
  1371  	(*RawJson)(nil),                              // 15: cckit.gateway.RawJson
  1372  	(*ChaincodeEvent)(nil),                       // 16: cckit.gateway.ChaincodeEvent
  1373  	nil,                                          // 17: cckit.gateway.ChaincodeInput.TransientEntry
  1374  	(*peer.ChaincodeEvent)(nil),                  // 18: protos.ChaincodeEvent
  1375  	(*timestamppb.Timestamp)(nil),                // 19: google.protobuf.Timestamp
  1376  	(*peer.Response)(nil),                        // 20: protos.Response
  1377  }
  1378  var file_chaincode_proto_depIdxs = []int32{
  1379  	17, // 0: cckit.gateway.ChaincodeInput.transient:type_name -> cckit.gateway.ChaincodeInput.TransientEntry
  1380  	1,  // 1: cckit.gateway.ChaincodeExecRequest.locator:type_name -> cckit.gateway.ChaincodeLocator
  1381  	0,  // 2: cckit.gateway.ChaincodeExecRequest.type:type_name -> cckit.gateway.InvocationType
  1382  	2,  // 3: cckit.gateway.ChaincodeExecRequest.input:type_name -> cckit.gateway.ChaincodeInput
  1383  	1,  // 4: cckit.gateway.ChaincodeQueryRequest.locator:type_name -> cckit.gateway.ChaincodeLocator
  1384  	2,  // 5: cckit.gateway.ChaincodeQueryRequest.input:type_name -> cckit.gateway.ChaincodeInput
  1385  	1,  // 6: cckit.gateway.ChaincodeInvokeRequest.locator:type_name -> cckit.gateway.ChaincodeLocator
  1386  	2,  // 7: cckit.gateway.ChaincodeInvokeRequest.input:type_name -> cckit.gateway.ChaincodeInput
  1387  	1,  // 8: cckit.gateway.ChaincodeEventsStreamRequest.locator:type_name -> cckit.gateway.ChaincodeLocator
  1388  	6,  // 9: cckit.gateway.ChaincodeEventsStreamRequest.from_block:type_name -> cckit.gateway.BlockLimit
  1389  	6,  // 10: cckit.gateway.ChaincodeEventsStreamRequest.to_block:type_name -> cckit.gateway.BlockLimit
  1390  	1,  // 11: cckit.gateway.ChaincodeEventsRequest.locator:type_name -> cckit.gateway.ChaincodeLocator
  1391  	6,  // 12: cckit.gateway.ChaincodeEventsRequest.from_block:type_name -> cckit.gateway.BlockLimit
  1392  	6,  // 13: cckit.gateway.ChaincodeEventsRequest.to_block:type_name -> cckit.gateway.BlockLimit
  1393  	0,  // 14: cckit.gateway.ChaincodeInstanceExecRequest.type:type_name -> cckit.gateway.InvocationType
  1394  	2,  // 15: cckit.gateway.ChaincodeInstanceExecRequest.input:type_name -> cckit.gateway.ChaincodeInput
  1395  	2,  // 16: cckit.gateway.ChaincodeInstanceQueryRequest.input:type_name -> cckit.gateway.ChaincodeInput
  1396  	2,  // 17: cckit.gateway.ChaincodeInstanceInvokeRequest.input:type_name -> cckit.gateway.ChaincodeInput
  1397  	6,  // 18: cckit.gateway.ChaincodeInstanceEventsStreamRequest.from_block:type_name -> cckit.gateway.BlockLimit
  1398  	6,  // 19: cckit.gateway.ChaincodeInstanceEventsStreamRequest.to_block:type_name -> cckit.gateway.BlockLimit
  1399  	6,  // 20: cckit.gateway.ChaincodeInstanceEventsRequest.from_block:type_name -> cckit.gateway.BlockLimit
  1400  	6,  // 21: cckit.gateway.ChaincodeInstanceEventsRequest.to_block:type_name -> cckit.gateway.BlockLimit
  1401  	1,  // 22: cckit.gateway.ChaincodeEvents.locator:type_name -> cckit.gateway.ChaincodeLocator
  1402  	6,  // 23: cckit.gateway.ChaincodeEvents.from_block:type_name -> cckit.gateway.BlockLimit
  1403  	6,  // 24: cckit.gateway.ChaincodeEvents.to_block:type_name -> cckit.gateway.BlockLimit
  1404  	16, // 25: cckit.gateway.ChaincodeEvents.items:type_name -> cckit.gateway.ChaincodeEvent
  1405  	18, // 26: cckit.gateway.ChaincodeEvent.event:type_name -> protos.ChaincodeEvent
  1406  	19, // 27: cckit.gateway.ChaincodeEvent.tx_timestamp:type_name -> google.protobuf.Timestamp
  1407  	15, // 28: cckit.gateway.ChaincodeEvent.payload:type_name -> cckit.gateway.RawJson
  1408  	3,  // 29: cckit.gateway.ChaincodeService.Exec:input_type -> cckit.gateway.ChaincodeExecRequest
  1409  	4,  // 30: cckit.gateway.ChaincodeService.Query:input_type -> cckit.gateway.ChaincodeQueryRequest
  1410  	5,  // 31: cckit.gateway.ChaincodeService.Invoke:input_type -> cckit.gateway.ChaincodeInvokeRequest
  1411  	7,  // 32: cckit.gateway.ChaincodeService.EventsStream:input_type -> cckit.gateway.ChaincodeEventsStreamRequest
  1412  	8,  // 33: cckit.gateway.ChaincodeService.Events:input_type -> cckit.gateway.ChaincodeEventsRequest
  1413  	7,  // 34: cckit.gateway.ChaincodeEventsService.EventsStream:input_type -> cckit.gateway.ChaincodeEventsStreamRequest
  1414  	8,  // 35: cckit.gateway.ChaincodeEventsService.Events:input_type -> cckit.gateway.ChaincodeEventsRequest
  1415  	9,  // 36: cckit.gateway.ChaincodeInstanceService.Exec:input_type -> cckit.gateway.ChaincodeInstanceExecRequest
  1416  	10, // 37: cckit.gateway.ChaincodeInstanceService.Query:input_type -> cckit.gateway.ChaincodeInstanceQueryRequest
  1417  	11, // 38: cckit.gateway.ChaincodeInstanceService.Invoke:input_type -> cckit.gateway.ChaincodeInstanceInvokeRequest
  1418  	12, // 39: cckit.gateway.ChaincodeInstanceService.EventsStream:input_type -> cckit.gateway.ChaincodeInstanceEventsStreamRequest
  1419  	13, // 40: cckit.gateway.ChaincodeInstanceService.Events:input_type -> cckit.gateway.ChaincodeInstanceEventsRequest
  1420  	12, // 41: cckit.gateway.ChaincodeInstanceEventsService.EventsStream:input_type -> cckit.gateway.ChaincodeInstanceEventsStreamRequest
  1421  	13, // 42: cckit.gateway.ChaincodeInstanceEventsService.Events:input_type -> cckit.gateway.ChaincodeInstanceEventsRequest
  1422  	20, // 43: cckit.gateway.ChaincodeService.Exec:output_type -> protos.Response
  1423  	20, // 44: cckit.gateway.ChaincodeService.Query:output_type -> protos.Response
  1424  	20, // 45: cckit.gateway.ChaincodeService.Invoke:output_type -> protos.Response
  1425  	16, // 46: cckit.gateway.ChaincodeService.EventsStream:output_type -> cckit.gateway.ChaincodeEvent
  1426  	14, // 47: cckit.gateway.ChaincodeService.Events:output_type -> cckit.gateway.ChaincodeEvents
  1427  	16, // 48: cckit.gateway.ChaincodeEventsService.EventsStream:output_type -> cckit.gateway.ChaincodeEvent
  1428  	14, // 49: cckit.gateway.ChaincodeEventsService.Events:output_type -> cckit.gateway.ChaincodeEvents
  1429  	20, // 50: cckit.gateway.ChaincodeInstanceService.Exec:output_type -> protos.Response
  1430  	20, // 51: cckit.gateway.ChaincodeInstanceService.Query:output_type -> protos.Response
  1431  	20, // 52: cckit.gateway.ChaincodeInstanceService.Invoke:output_type -> protos.Response
  1432  	16, // 53: cckit.gateway.ChaincodeInstanceService.EventsStream:output_type -> cckit.gateway.ChaincodeEvent
  1433  	14, // 54: cckit.gateway.ChaincodeInstanceService.Events:output_type -> cckit.gateway.ChaincodeEvents
  1434  	16, // 55: cckit.gateway.ChaincodeInstanceEventsService.EventsStream:output_type -> cckit.gateway.ChaincodeEvent
  1435  	14, // 56: cckit.gateway.ChaincodeInstanceEventsService.Events:output_type -> cckit.gateway.ChaincodeEvents
  1436  	43, // [43:57] is the sub-list for method output_type
  1437  	29, // [29:43] is the sub-list for method input_type
  1438  	29, // [29:29] is the sub-list for extension type_name
  1439  	29, // [29:29] is the sub-list for extension extendee
  1440  	0,  // [0:29] is the sub-list for field type_name
  1441  }
  1442  
  1443  func init() { file_chaincode_proto_init() }
  1444  func file_chaincode_proto_init() {
  1445  	if File_chaincode_proto != nil {
  1446  		return
  1447  	}
  1448  	if !protoimpl.UnsafeEnabled {
  1449  		file_chaincode_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  1450  			switch v := v.(*ChaincodeLocator); i {
  1451  			case 0:
  1452  				return &v.state
  1453  			case 1:
  1454  				return &v.sizeCache
  1455  			case 2:
  1456  				return &v.unknownFields
  1457  			default:
  1458  				return nil
  1459  			}
  1460  		}
  1461  		file_chaincode_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  1462  			switch v := v.(*ChaincodeInput); i {
  1463  			case 0:
  1464  				return &v.state
  1465  			case 1:
  1466  				return &v.sizeCache
  1467  			case 2:
  1468  				return &v.unknownFields
  1469  			default:
  1470  				return nil
  1471  			}
  1472  		}
  1473  		file_chaincode_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  1474  			switch v := v.(*ChaincodeExecRequest); i {
  1475  			case 0:
  1476  				return &v.state
  1477  			case 1:
  1478  				return &v.sizeCache
  1479  			case 2:
  1480  				return &v.unknownFields
  1481  			default:
  1482  				return nil
  1483  			}
  1484  		}
  1485  		file_chaincode_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  1486  			switch v := v.(*ChaincodeQueryRequest); i {
  1487  			case 0:
  1488  				return &v.state
  1489  			case 1:
  1490  				return &v.sizeCache
  1491  			case 2:
  1492  				return &v.unknownFields
  1493  			default:
  1494  				return nil
  1495  			}
  1496  		}
  1497  		file_chaincode_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  1498  			switch v := v.(*ChaincodeInvokeRequest); i {
  1499  			case 0:
  1500  				return &v.state
  1501  			case 1:
  1502  				return &v.sizeCache
  1503  			case 2:
  1504  				return &v.unknownFields
  1505  			default:
  1506  				return nil
  1507  			}
  1508  		}
  1509  		file_chaincode_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  1510  			switch v := v.(*BlockLimit); i {
  1511  			case 0:
  1512  				return &v.state
  1513  			case 1:
  1514  				return &v.sizeCache
  1515  			case 2:
  1516  				return &v.unknownFields
  1517  			default:
  1518  				return nil
  1519  			}
  1520  		}
  1521  		file_chaincode_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
  1522  			switch v := v.(*ChaincodeEventsStreamRequest); i {
  1523  			case 0:
  1524  				return &v.state
  1525  			case 1:
  1526  				return &v.sizeCache
  1527  			case 2:
  1528  				return &v.unknownFields
  1529  			default:
  1530  				return nil
  1531  			}
  1532  		}
  1533  		file_chaincode_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
  1534  			switch v := v.(*ChaincodeEventsRequest); i {
  1535  			case 0:
  1536  				return &v.state
  1537  			case 1:
  1538  				return &v.sizeCache
  1539  			case 2:
  1540  				return &v.unknownFields
  1541  			default:
  1542  				return nil
  1543  			}
  1544  		}
  1545  		file_chaincode_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
  1546  			switch v := v.(*ChaincodeInstanceExecRequest); i {
  1547  			case 0:
  1548  				return &v.state
  1549  			case 1:
  1550  				return &v.sizeCache
  1551  			case 2:
  1552  				return &v.unknownFields
  1553  			default:
  1554  				return nil
  1555  			}
  1556  		}
  1557  		file_chaincode_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
  1558  			switch v := v.(*ChaincodeInstanceQueryRequest); i {
  1559  			case 0:
  1560  				return &v.state
  1561  			case 1:
  1562  				return &v.sizeCache
  1563  			case 2:
  1564  				return &v.unknownFields
  1565  			default:
  1566  				return nil
  1567  			}
  1568  		}
  1569  		file_chaincode_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
  1570  			switch v := v.(*ChaincodeInstanceInvokeRequest); i {
  1571  			case 0:
  1572  				return &v.state
  1573  			case 1:
  1574  				return &v.sizeCache
  1575  			case 2:
  1576  				return &v.unknownFields
  1577  			default:
  1578  				return nil
  1579  			}
  1580  		}
  1581  		file_chaincode_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
  1582  			switch v := v.(*ChaincodeInstanceEventsStreamRequest); i {
  1583  			case 0:
  1584  				return &v.state
  1585  			case 1:
  1586  				return &v.sizeCache
  1587  			case 2:
  1588  				return &v.unknownFields
  1589  			default:
  1590  				return nil
  1591  			}
  1592  		}
  1593  		file_chaincode_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
  1594  			switch v := v.(*ChaincodeInstanceEventsRequest); i {
  1595  			case 0:
  1596  				return &v.state
  1597  			case 1:
  1598  				return &v.sizeCache
  1599  			case 2:
  1600  				return &v.unknownFields
  1601  			default:
  1602  				return nil
  1603  			}
  1604  		}
  1605  		file_chaincode_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
  1606  			switch v := v.(*ChaincodeEvents); i {
  1607  			case 0:
  1608  				return &v.state
  1609  			case 1:
  1610  				return &v.sizeCache
  1611  			case 2:
  1612  				return &v.unknownFields
  1613  			default:
  1614  				return nil
  1615  			}
  1616  		}
  1617  		file_chaincode_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
  1618  			switch v := v.(*RawJson); i {
  1619  			case 0:
  1620  				return &v.state
  1621  			case 1:
  1622  				return &v.sizeCache
  1623  			case 2:
  1624  				return &v.unknownFields
  1625  			default:
  1626  				return nil
  1627  			}
  1628  		}
  1629  		file_chaincode_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
  1630  			switch v := v.(*ChaincodeEvent); i {
  1631  			case 0:
  1632  				return &v.state
  1633  			case 1:
  1634  				return &v.sizeCache
  1635  			case 2:
  1636  				return &v.unknownFields
  1637  			default:
  1638  				return nil
  1639  			}
  1640  		}
  1641  	}
  1642  	type x struct{}
  1643  	out := protoimpl.TypeBuilder{
  1644  		File: protoimpl.DescBuilder{
  1645  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  1646  			RawDescriptor: file_chaincode_proto_rawDesc,
  1647  			NumEnums:      1,
  1648  			NumMessages:   17,
  1649  			NumExtensions: 0,
  1650  			NumServices:   4,
  1651  		},
  1652  		GoTypes:           file_chaincode_proto_goTypes,
  1653  		DependencyIndexes: file_chaincode_proto_depIdxs,
  1654  		EnumInfos:         file_chaincode_proto_enumTypes,
  1655  		MessageInfos:      file_chaincode_proto_msgTypes,
  1656  	}.Build()
  1657  	File_chaincode_proto = out.File
  1658  	file_chaincode_proto_rawDesc = nil
  1659  	file_chaincode_proto_goTypes = nil
  1660  	file_chaincode_proto_depIdxs = nil
  1661  }
  1662  
  1663  // Reference imports to suppress errors if they are not otherwise used.
  1664  var _ context.Context
  1665  var _ grpc.ClientConnInterface
  1666  
  1667  // This is a compile-time assertion to ensure that this generated file
  1668  // is compatible with the grpc package it is being compiled against.
  1669  const _ = grpc.SupportPackageIsVersion6
  1670  
  1671  // ChaincodeServiceClient is the client API for ChaincodeService service.
  1672  //
  1673  // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
  1674  type ChaincodeServiceClient interface {
  1675  	// Exec: Query or Invoke
  1676  	Exec(ctx context.Context, in *ChaincodeExecRequest, opts ...grpc.CallOption) (*peer.Response, error)
  1677  	// Query chaincode on home peer. Do NOT send to orderer.
  1678  	Query(ctx context.Context, in *ChaincodeQueryRequest, opts ...grpc.CallOption) (*peer.Response, error)
  1679  	// Invoke chaincode on peers, according to endorsement policy and the SEND to orderer
  1680  	Invoke(ctx context.Context, in *ChaincodeInvokeRequest, opts ...grpc.CallOption) (*peer.Response, error)
  1681  	// Chaincode events stream
  1682  	EventsStream(ctx context.Context, in *ChaincodeEventsStreamRequest, opts ...grpc.CallOption) (ChaincodeService_EventsStreamClient, error)
  1683  	// Chaincode events
  1684  	Events(ctx context.Context, in *ChaincodeEventsRequest, opts ...grpc.CallOption) (*ChaincodeEvents, error)
  1685  }
  1686  
  1687  type chaincodeServiceClient struct {
  1688  	cc grpc.ClientConnInterface
  1689  }
  1690  
  1691  func NewChaincodeServiceClient(cc grpc.ClientConnInterface) ChaincodeServiceClient {
  1692  	return &chaincodeServiceClient{cc}
  1693  }
  1694  
  1695  func (c *chaincodeServiceClient) Exec(ctx context.Context, in *ChaincodeExecRequest, opts ...grpc.CallOption) (*peer.Response, error) {
  1696  	out := new(peer.Response)
  1697  	err := c.cc.Invoke(ctx, "/cckit.gateway.ChaincodeService/Exec", in, out, opts...)
  1698  	if err != nil {
  1699  		return nil, err
  1700  	}
  1701  	return out, nil
  1702  }
  1703  
  1704  func (c *chaincodeServiceClient) Query(ctx context.Context, in *ChaincodeQueryRequest, opts ...grpc.CallOption) (*peer.Response, error) {
  1705  	out := new(peer.Response)
  1706  	err := c.cc.Invoke(ctx, "/cckit.gateway.ChaincodeService/Query", in, out, opts...)
  1707  	if err != nil {
  1708  		return nil, err
  1709  	}
  1710  	return out, nil
  1711  }
  1712  
  1713  func (c *chaincodeServiceClient) Invoke(ctx context.Context, in *ChaincodeInvokeRequest, opts ...grpc.CallOption) (*peer.Response, error) {
  1714  	out := new(peer.Response)
  1715  	err := c.cc.Invoke(ctx, "/cckit.gateway.ChaincodeService/Invoke", in, out, opts...)
  1716  	if err != nil {
  1717  		return nil, err
  1718  	}
  1719  	return out, nil
  1720  }
  1721  
  1722  func (c *chaincodeServiceClient) EventsStream(ctx context.Context, in *ChaincodeEventsStreamRequest, opts ...grpc.CallOption) (ChaincodeService_EventsStreamClient, error) {
  1723  	stream, err := c.cc.NewStream(ctx, &_ChaincodeService_serviceDesc.Streams[0], "/cckit.gateway.ChaincodeService/EventsStream", opts...)
  1724  	if err != nil {
  1725  		return nil, err
  1726  	}
  1727  	x := &chaincodeServiceEventsStreamClient{stream}
  1728  	if err := x.ClientStream.SendMsg(in); err != nil {
  1729  		return nil, err
  1730  	}
  1731  	if err := x.ClientStream.CloseSend(); err != nil {
  1732  		return nil, err
  1733  	}
  1734  	return x, nil
  1735  }
  1736  
  1737  type ChaincodeService_EventsStreamClient interface {
  1738  	Recv() (*ChaincodeEvent, error)
  1739  	grpc.ClientStream
  1740  }
  1741  
  1742  type chaincodeServiceEventsStreamClient struct {
  1743  	grpc.ClientStream
  1744  }
  1745  
  1746  func (x *chaincodeServiceEventsStreamClient) Recv() (*ChaincodeEvent, error) {
  1747  	m := new(ChaincodeEvent)
  1748  	if err := x.ClientStream.RecvMsg(m); err != nil {
  1749  		return nil, err
  1750  	}
  1751  	return m, nil
  1752  }
  1753  
  1754  func (c *chaincodeServiceClient) Events(ctx context.Context, in *ChaincodeEventsRequest, opts ...grpc.CallOption) (*ChaincodeEvents, error) {
  1755  	out := new(ChaincodeEvents)
  1756  	err := c.cc.Invoke(ctx, "/cckit.gateway.ChaincodeService/Events", in, out, opts...)
  1757  	if err != nil {
  1758  		return nil, err
  1759  	}
  1760  	return out, nil
  1761  }
  1762  
  1763  // ChaincodeServiceServer is the server API for ChaincodeService service.
  1764  type ChaincodeServiceServer interface {
  1765  	// Exec: Query or Invoke
  1766  	Exec(context.Context, *ChaincodeExecRequest) (*peer.Response, error)
  1767  	// Query chaincode on home peer. Do NOT send to orderer.
  1768  	Query(context.Context, *ChaincodeQueryRequest) (*peer.Response, error)
  1769  	// Invoke chaincode on peers, according to endorsement policy and the SEND to orderer
  1770  	Invoke(context.Context, *ChaincodeInvokeRequest) (*peer.Response, error)
  1771  	// Chaincode events stream
  1772  	EventsStream(*ChaincodeEventsStreamRequest, ChaincodeService_EventsStreamServer) error
  1773  	// Chaincode events
  1774  	Events(context.Context, *ChaincodeEventsRequest) (*ChaincodeEvents, error)
  1775  }
  1776  
  1777  // UnimplementedChaincodeServiceServer can be embedded to have forward compatible implementations.
  1778  type UnimplementedChaincodeServiceServer struct {
  1779  }
  1780  
  1781  func (*UnimplementedChaincodeServiceServer) Exec(context.Context, *ChaincodeExecRequest) (*peer.Response, error) {
  1782  	return nil, status.Errorf(codes.Unimplemented, "method Exec not implemented")
  1783  }
  1784  func (*UnimplementedChaincodeServiceServer) Query(context.Context, *ChaincodeQueryRequest) (*peer.Response, error) {
  1785  	return nil, status.Errorf(codes.Unimplemented, "method Query not implemented")
  1786  }
  1787  func (*UnimplementedChaincodeServiceServer) Invoke(context.Context, *ChaincodeInvokeRequest) (*peer.Response, error) {
  1788  	return nil, status.Errorf(codes.Unimplemented, "method Invoke not implemented")
  1789  }
  1790  func (*UnimplementedChaincodeServiceServer) EventsStream(*ChaincodeEventsStreamRequest, ChaincodeService_EventsStreamServer) error {
  1791  	return status.Errorf(codes.Unimplemented, "method EventsStream not implemented")
  1792  }
  1793  func (*UnimplementedChaincodeServiceServer) Events(context.Context, *ChaincodeEventsRequest) (*ChaincodeEvents, error) {
  1794  	return nil, status.Errorf(codes.Unimplemented, "method Events not implemented")
  1795  }
  1796  
  1797  func RegisterChaincodeServiceServer(s *grpc.Server, srv ChaincodeServiceServer) {
  1798  	s.RegisterService(&_ChaincodeService_serviceDesc, srv)
  1799  }
  1800  
  1801  func _ChaincodeService_Exec_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  1802  	in := new(ChaincodeExecRequest)
  1803  	if err := dec(in); err != nil {
  1804  		return nil, err
  1805  	}
  1806  	if interceptor == nil {
  1807  		return srv.(ChaincodeServiceServer).Exec(ctx, in)
  1808  	}
  1809  	info := &grpc.UnaryServerInfo{
  1810  		Server:     srv,
  1811  		FullMethod: "/cckit.gateway.ChaincodeService/Exec",
  1812  	}
  1813  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  1814  		return srv.(ChaincodeServiceServer).Exec(ctx, req.(*ChaincodeExecRequest))
  1815  	}
  1816  	return interceptor(ctx, in, info, handler)
  1817  }
  1818  
  1819  func _ChaincodeService_Query_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  1820  	in := new(ChaincodeQueryRequest)
  1821  	if err := dec(in); err != nil {
  1822  		return nil, err
  1823  	}
  1824  	if interceptor == nil {
  1825  		return srv.(ChaincodeServiceServer).Query(ctx, in)
  1826  	}
  1827  	info := &grpc.UnaryServerInfo{
  1828  		Server:     srv,
  1829  		FullMethod: "/cckit.gateway.ChaincodeService/Query",
  1830  	}
  1831  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  1832  		return srv.(ChaincodeServiceServer).Query(ctx, req.(*ChaincodeQueryRequest))
  1833  	}
  1834  	return interceptor(ctx, in, info, handler)
  1835  }
  1836  
  1837  func _ChaincodeService_Invoke_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  1838  	in := new(ChaincodeInvokeRequest)
  1839  	if err := dec(in); err != nil {
  1840  		return nil, err
  1841  	}
  1842  	if interceptor == nil {
  1843  		return srv.(ChaincodeServiceServer).Invoke(ctx, in)
  1844  	}
  1845  	info := &grpc.UnaryServerInfo{
  1846  		Server:     srv,
  1847  		FullMethod: "/cckit.gateway.ChaincodeService/Invoke",
  1848  	}
  1849  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  1850  		return srv.(ChaincodeServiceServer).Invoke(ctx, req.(*ChaincodeInvokeRequest))
  1851  	}
  1852  	return interceptor(ctx, in, info, handler)
  1853  }
  1854  
  1855  func _ChaincodeService_EventsStream_Handler(srv interface{}, stream grpc.ServerStream) error {
  1856  	m := new(ChaincodeEventsStreamRequest)
  1857  	if err := stream.RecvMsg(m); err != nil {
  1858  		return err
  1859  	}
  1860  	return srv.(ChaincodeServiceServer).EventsStream(m, &chaincodeServiceEventsStreamServer{stream})
  1861  }
  1862  
  1863  type ChaincodeService_EventsStreamServer interface {
  1864  	Send(*ChaincodeEvent) error
  1865  	grpc.ServerStream
  1866  }
  1867  
  1868  type chaincodeServiceEventsStreamServer struct {
  1869  	grpc.ServerStream
  1870  }
  1871  
  1872  func (x *chaincodeServiceEventsStreamServer) Send(m *ChaincodeEvent) error {
  1873  	return x.ServerStream.SendMsg(m)
  1874  }
  1875  
  1876  func _ChaincodeService_Events_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  1877  	in := new(ChaincodeEventsRequest)
  1878  	if err := dec(in); err != nil {
  1879  		return nil, err
  1880  	}
  1881  	if interceptor == nil {
  1882  		return srv.(ChaincodeServiceServer).Events(ctx, in)
  1883  	}
  1884  	info := &grpc.UnaryServerInfo{
  1885  		Server:     srv,
  1886  		FullMethod: "/cckit.gateway.ChaincodeService/Events",
  1887  	}
  1888  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  1889  		return srv.(ChaincodeServiceServer).Events(ctx, req.(*ChaincodeEventsRequest))
  1890  	}
  1891  	return interceptor(ctx, in, info, handler)
  1892  }
  1893  
  1894  var _ChaincodeService_serviceDesc = grpc.ServiceDesc{
  1895  	ServiceName: "cckit.gateway.ChaincodeService",
  1896  	HandlerType: (*ChaincodeServiceServer)(nil),
  1897  	Methods: []grpc.MethodDesc{
  1898  		{
  1899  			MethodName: "Exec",
  1900  			Handler:    _ChaincodeService_Exec_Handler,
  1901  		},
  1902  		{
  1903  			MethodName: "Query",
  1904  			Handler:    _ChaincodeService_Query_Handler,
  1905  		},
  1906  		{
  1907  			MethodName: "Invoke",
  1908  			Handler:    _ChaincodeService_Invoke_Handler,
  1909  		},
  1910  		{
  1911  			MethodName: "Events",
  1912  			Handler:    _ChaincodeService_Events_Handler,
  1913  		},
  1914  	},
  1915  	Streams: []grpc.StreamDesc{
  1916  		{
  1917  			StreamName:    "EventsStream",
  1918  			Handler:       _ChaincodeService_EventsStream_Handler,
  1919  			ServerStreams: true,
  1920  		},
  1921  	},
  1922  	Metadata: "chaincode.proto",
  1923  }
  1924  
  1925  // ChaincodeEventsServiceClient is the client API for ChaincodeEventsService service.
  1926  //
  1927  // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
  1928  type ChaincodeEventsServiceClient interface {
  1929  	// Chaincode events stream
  1930  	EventsStream(ctx context.Context, in *ChaincodeEventsStreamRequest, opts ...grpc.CallOption) (ChaincodeEventsService_EventsStreamClient, error)
  1931  	// Chaincode events
  1932  	Events(ctx context.Context, in *ChaincodeEventsRequest, opts ...grpc.CallOption) (*ChaincodeEvents, error)
  1933  }
  1934  
  1935  type chaincodeEventsServiceClient struct {
  1936  	cc grpc.ClientConnInterface
  1937  }
  1938  
  1939  func NewChaincodeEventsServiceClient(cc grpc.ClientConnInterface) ChaincodeEventsServiceClient {
  1940  	return &chaincodeEventsServiceClient{cc}
  1941  }
  1942  
  1943  func (c *chaincodeEventsServiceClient) EventsStream(ctx context.Context, in *ChaincodeEventsStreamRequest, opts ...grpc.CallOption) (ChaincodeEventsService_EventsStreamClient, error) {
  1944  	stream, err := c.cc.NewStream(ctx, &_ChaincodeEventsService_serviceDesc.Streams[0], "/cckit.gateway.ChaincodeEventsService/EventsStream", opts...)
  1945  	if err != nil {
  1946  		return nil, err
  1947  	}
  1948  	x := &chaincodeEventsServiceEventsStreamClient{stream}
  1949  	if err := x.ClientStream.SendMsg(in); err != nil {
  1950  		return nil, err
  1951  	}
  1952  	if err := x.ClientStream.CloseSend(); err != nil {
  1953  		return nil, err
  1954  	}
  1955  	return x, nil
  1956  }
  1957  
  1958  type ChaincodeEventsService_EventsStreamClient interface {
  1959  	Recv() (*ChaincodeEvent, error)
  1960  	grpc.ClientStream
  1961  }
  1962  
  1963  type chaincodeEventsServiceEventsStreamClient struct {
  1964  	grpc.ClientStream
  1965  }
  1966  
  1967  func (x *chaincodeEventsServiceEventsStreamClient) Recv() (*ChaincodeEvent, error) {
  1968  	m := new(ChaincodeEvent)
  1969  	if err := x.ClientStream.RecvMsg(m); err != nil {
  1970  		return nil, err
  1971  	}
  1972  	return m, nil
  1973  }
  1974  
  1975  func (c *chaincodeEventsServiceClient) Events(ctx context.Context, in *ChaincodeEventsRequest, opts ...grpc.CallOption) (*ChaincodeEvents, error) {
  1976  	out := new(ChaincodeEvents)
  1977  	err := c.cc.Invoke(ctx, "/cckit.gateway.ChaincodeEventsService/Events", in, out, opts...)
  1978  	if err != nil {
  1979  		return nil, err
  1980  	}
  1981  	return out, nil
  1982  }
  1983  
  1984  // ChaincodeEventsServiceServer is the server API for ChaincodeEventsService service.
  1985  type ChaincodeEventsServiceServer interface {
  1986  	// Chaincode events stream
  1987  	EventsStream(*ChaincodeEventsStreamRequest, ChaincodeEventsService_EventsStreamServer) error
  1988  	// Chaincode events
  1989  	Events(context.Context, *ChaincodeEventsRequest) (*ChaincodeEvents, error)
  1990  }
  1991  
  1992  // UnimplementedChaincodeEventsServiceServer can be embedded to have forward compatible implementations.
  1993  type UnimplementedChaincodeEventsServiceServer struct {
  1994  }
  1995  
  1996  func (*UnimplementedChaincodeEventsServiceServer) EventsStream(*ChaincodeEventsStreamRequest, ChaincodeEventsService_EventsStreamServer) error {
  1997  	return status.Errorf(codes.Unimplemented, "method EventsStream not implemented")
  1998  }
  1999  func (*UnimplementedChaincodeEventsServiceServer) Events(context.Context, *ChaincodeEventsRequest) (*ChaincodeEvents, error) {
  2000  	return nil, status.Errorf(codes.Unimplemented, "method Events not implemented")
  2001  }
  2002  
  2003  func RegisterChaincodeEventsServiceServer(s *grpc.Server, srv ChaincodeEventsServiceServer) {
  2004  	s.RegisterService(&_ChaincodeEventsService_serviceDesc, srv)
  2005  }
  2006  
  2007  func _ChaincodeEventsService_EventsStream_Handler(srv interface{}, stream grpc.ServerStream) error {
  2008  	m := new(ChaincodeEventsStreamRequest)
  2009  	if err := stream.RecvMsg(m); err != nil {
  2010  		return err
  2011  	}
  2012  	return srv.(ChaincodeEventsServiceServer).EventsStream(m, &chaincodeEventsServiceEventsStreamServer{stream})
  2013  }
  2014  
  2015  type ChaincodeEventsService_EventsStreamServer interface {
  2016  	Send(*ChaincodeEvent) error
  2017  	grpc.ServerStream
  2018  }
  2019  
  2020  type chaincodeEventsServiceEventsStreamServer struct {
  2021  	grpc.ServerStream
  2022  }
  2023  
  2024  func (x *chaincodeEventsServiceEventsStreamServer) Send(m *ChaincodeEvent) error {
  2025  	return x.ServerStream.SendMsg(m)
  2026  }
  2027  
  2028  func _ChaincodeEventsService_Events_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2029  	in := new(ChaincodeEventsRequest)
  2030  	if err := dec(in); err != nil {
  2031  		return nil, err
  2032  	}
  2033  	if interceptor == nil {
  2034  		return srv.(ChaincodeEventsServiceServer).Events(ctx, in)
  2035  	}
  2036  	info := &grpc.UnaryServerInfo{
  2037  		Server:     srv,
  2038  		FullMethod: "/cckit.gateway.ChaincodeEventsService/Events",
  2039  	}
  2040  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2041  		return srv.(ChaincodeEventsServiceServer).Events(ctx, req.(*ChaincodeEventsRequest))
  2042  	}
  2043  	return interceptor(ctx, in, info, handler)
  2044  }
  2045  
  2046  var _ChaincodeEventsService_serviceDesc = grpc.ServiceDesc{
  2047  	ServiceName: "cckit.gateway.ChaincodeEventsService",
  2048  	HandlerType: (*ChaincodeEventsServiceServer)(nil),
  2049  	Methods: []grpc.MethodDesc{
  2050  		{
  2051  			MethodName: "Events",
  2052  			Handler:    _ChaincodeEventsService_Events_Handler,
  2053  		},
  2054  	},
  2055  	Streams: []grpc.StreamDesc{
  2056  		{
  2057  			StreamName:    "EventsStream",
  2058  			Handler:       _ChaincodeEventsService_EventsStream_Handler,
  2059  			ServerStreams: true,
  2060  		},
  2061  	},
  2062  	Metadata: "chaincode.proto",
  2063  }
  2064  
  2065  // ChaincodeInstanceServiceClient is the client API for ChaincodeInstanceService service.
  2066  //
  2067  // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
  2068  type ChaincodeInstanceServiceClient interface {
  2069  	// Exec: Query or Invoke
  2070  	Exec(ctx context.Context, in *ChaincodeInstanceExecRequest, opts ...grpc.CallOption) (*peer.Response, error)
  2071  	// Query chaincode on home peer. Do NOT send to orderer.
  2072  	Query(ctx context.Context, in *ChaincodeInstanceQueryRequest, opts ...grpc.CallOption) (*peer.Response, error)
  2073  	// Invoke chaincode on peers, according to endorsement policy and the SEND to orderer
  2074  	Invoke(ctx context.Context, in *ChaincodeInstanceInvokeRequest, opts ...grpc.CallOption) (*peer.Response, error)
  2075  	// Chaincode events stream
  2076  	EventsStream(ctx context.Context, in *ChaincodeInstanceEventsStreamRequest, opts ...grpc.CallOption) (ChaincodeInstanceService_EventsStreamClient, error)
  2077  	// Chaincode events
  2078  	Events(ctx context.Context, in *ChaincodeInstanceEventsRequest, opts ...grpc.CallOption) (*ChaincodeEvents, error)
  2079  }
  2080  
  2081  type chaincodeInstanceServiceClient struct {
  2082  	cc grpc.ClientConnInterface
  2083  }
  2084  
  2085  func NewChaincodeInstanceServiceClient(cc grpc.ClientConnInterface) ChaincodeInstanceServiceClient {
  2086  	return &chaincodeInstanceServiceClient{cc}
  2087  }
  2088  
  2089  func (c *chaincodeInstanceServiceClient) Exec(ctx context.Context, in *ChaincodeInstanceExecRequest, opts ...grpc.CallOption) (*peer.Response, error) {
  2090  	out := new(peer.Response)
  2091  	err := c.cc.Invoke(ctx, "/cckit.gateway.ChaincodeInstanceService/Exec", in, out, opts...)
  2092  	if err != nil {
  2093  		return nil, err
  2094  	}
  2095  	return out, nil
  2096  }
  2097  
  2098  func (c *chaincodeInstanceServiceClient) Query(ctx context.Context, in *ChaincodeInstanceQueryRequest, opts ...grpc.CallOption) (*peer.Response, error) {
  2099  	out := new(peer.Response)
  2100  	err := c.cc.Invoke(ctx, "/cckit.gateway.ChaincodeInstanceService/Query", in, out, opts...)
  2101  	if err != nil {
  2102  		return nil, err
  2103  	}
  2104  	return out, nil
  2105  }
  2106  
  2107  func (c *chaincodeInstanceServiceClient) Invoke(ctx context.Context, in *ChaincodeInstanceInvokeRequest, opts ...grpc.CallOption) (*peer.Response, error) {
  2108  	out := new(peer.Response)
  2109  	err := c.cc.Invoke(ctx, "/cckit.gateway.ChaincodeInstanceService/Invoke", in, out, opts...)
  2110  	if err != nil {
  2111  		return nil, err
  2112  	}
  2113  	return out, nil
  2114  }
  2115  
  2116  func (c *chaincodeInstanceServiceClient) EventsStream(ctx context.Context, in *ChaincodeInstanceEventsStreamRequest, opts ...grpc.CallOption) (ChaincodeInstanceService_EventsStreamClient, error) {
  2117  	stream, err := c.cc.NewStream(ctx, &_ChaincodeInstanceService_serviceDesc.Streams[0], "/cckit.gateway.ChaincodeInstanceService/EventsStream", opts...)
  2118  	if err != nil {
  2119  		return nil, err
  2120  	}
  2121  	x := &chaincodeInstanceServiceEventsStreamClient{stream}
  2122  	if err := x.ClientStream.SendMsg(in); err != nil {
  2123  		return nil, err
  2124  	}
  2125  	if err := x.ClientStream.CloseSend(); err != nil {
  2126  		return nil, err
  2127  	}
  2128  	return x, nil
  2129  }
  2130  
  2131  type ChaincodeInstanceService_EventsStreamClient interface {
  2132  	Recv() (*ChaincodeEvent, error)
  2133  	grpc.ClientStream
  2134  }
  2135  
  2136  type chaincodeInstanceServiceEventsStreamClient struct {
  2137  	grpc.ClientStream
  2138  }
  2139  
  2140  func (x *chaincodeInstanceServiceEventsStreamClient) Recv() (*ChaincodeEvent, error) {
  2141  	m := new(ChaincodeEvent)
  2142  	if err := x.ClientStream.RecvMsg(m); err != nil {
  2143  		return nil, err
  2144  	}
  2145  	return m, nil
  2146  }
  2147  
  2148  func (c *chaincodeInstanceServiceClient) Events(ctx context.Context, in *ChaincodeInstanceEventsRequest, opts ...grpc.CallOption) (*ChaincodeEvents, error) {
  2149  	out := new(ChaincodeEvents)
  2150  	err := c.cc.Invoke(ctx, "/cckit.gateway.ChaincodeInstanceService/Events", in, out, opts...)
  2151  	if err != nil {
  2152  		return nil, err
  2153  	}
  2154  	return out, nil
  2155  }
  2156  
  2157  // ChaincodeInstanceServiceServer is the server API for ChaincodeInstanceService service.
  2158  type ChaincodeInstanceServiceServer interface {
  2159  	// Exec: Query or Invoke
  2160  	Exec(context.Context, *ChaincodeInstanceExecRequest) (*peer.Response, error)
  2161  	// Query chaincode on home peer. Do NOT send to orderer.
  2162  	Query(context.Context, *ChaincodeInstanceQueryRequest) (*peer.Response, error)
  2163  	// Invoke chaincode on peers, according to endorsement policy and the SEND to orderer
  2164  	Invoke(context.Context, *ChaincodeInstanceInvokeRequest) (*peer.Response, error)
  2165  	// Chaincode events stream
  2166  	EventsStream(*ChaincodeInstanceEventsStreamRequest, ChaincodeInstanceService_EventsStreamServer) error
  2167  	// Chaincode events
  2168  	Events(context.Context, *ChaincodeInstanceEventsRequest) (*ChaincodeEvents, error)
  2169  }
  2170  
  2171  // UnimplementedChaincodeInstanceServiceServer can be embedded to have forward compatible implementations.
  2172  type UnimplementedChaincodeInstanceServiceServer struct {
  2173  }
  2174  
  2175  func (*UnimplementedChaincodeInstanceServiceServer) Exec(context.Context, *ChaincodeInstanceExecRequest) (*peer.Response, error) {
  2176  	return nil, status.Errorf(codes.Unimplemented, "method Exec not implemented")
  2177  }
  2178  func (*UnimplementedChaincodeInstanceServiceServer) Query(context.Context, *ChaincodeInstanceQueryRequest) (*peer.Response, error) {
  2179  	return nil, status.Errorf(codes.Unimplemented, "method Query not implemented")
  2180  }
  2181  func (*UnimplementedChaincodeInstanceServiceServer) Invoke(context.Context, *ChaincodeInstanceInvokeRequest) (*peer.Response, error) {
  2182  	return nil, status.Errorf(codes.Unimplemented, "method Invoke not implemented")
  2183  }
  2184  func (*UnimplementedChaincodeInstanceServiceServer) EventsStream(*ChaincodeInstanceEventsStreamRequest, ChaincodeInstanceService_EventsStreamServer) error {
  2185  	return status.Errorf(codes.Unimplemented, "method EventsStream not implemented")
  2186  }
  2187  func (*UnimplementedChaincodeInstanceServiceServer) Events(context.Context, *ChaincodeInstanceEventsRequest) (*ChaincodeEvents, error) {
  2188  	return nil, status.Errorf(codes.Unimplemented, "method Events not implemented")
  2189  }
  2190  
  2191  func RegisterChaincodeInstanceServiceServer(s *grpc.Server, srv ChaincodeInstanceServiceServer) {
  2192  	s.RegisterService(&_ChaincodeInstanceService_serviceDesc, srv)
  2193  }
  2194  
  2195  func _ChaincodeInstanceService_Exec_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2196  	in := new(ChaincodeInstanceExecRequest)
  2197  	if err := dec(in); err != nil {
  2198  		return nil, err
  2199  	}
  2200  	if interceptor == nil {
  2201  		return srv.(ChaincodeInstanceServiceServer).Exec(ctx, in)
  2202  	}
  2203  	info := &grpc.UnaryServerInfo{
  2204  		Server:     srv,
  2205  		FullMethod: "/cckit.gateway.ChaincodeInstanceService/Exec",
  2206  	}
  2207  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2208  		return srv.(ChaincodeInstanceServiceServer).Exec(ctx, req.(*ChaincodeInstanceExecRequest))
  2209  	}
  2210  	return interceptor(ctx, in, info, handler)
  2211  }
  2212  
  2213  func _ChaincodeInstanceService_Query_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2214  	in := new(ChaincodeInstanceQueryRequest)
  2215  	if err := dec(in); err != nil {
  2216  		return nil, err
  2217  	}
  2218  	if interceptor == nil {
  2219  		return srv.(ChaincodeInstanceServiceServer).Query(ctx, in)
  2220  	}
  2221  	info := &grpc.UnaryServerInfo{
  2222  		Server:     srv,
  2223  		FullMethod: "/cckit.gateway.ChaincodeInstanceService/Query",
  2224  	}
  2225  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2226  		return srv.(ChaincodeInstanceServiceServer).Query(ctx, req.(*ChaincodeInstanceQueryRequest))
  2227  	}
  2228  	return interceptor(ctx, in, info, handler)
  2229  }
  2230  
  2231  func _ChaincodeInstanceService_Invoke_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2232  	in := new(ChaincodeInstanceInvokeRequest)
  2233  	if err := dec(in); err != nil {
  2234  		return nil, err
  2235  	}
  2236  	if interceptor == nil {
  2237  		return srv.(ChaincodeInstanceServiceServer).Invoke(ctx, in)
  2238  	}
  2239  	info := &grpc.UnaryServerInfo{
  2240  		Server:     srv,
  2241  		FullMethod: "/cckit.gateway.ChaincodeInstanceService/Invoke",
  2242  	}
  2243  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2244  		return srv.(ChaincodeInstanceServiceServer).Invoke(ctx, req.(*ChaincodeInstanceInvokeRequest))
  2245  	}
  2246  	return interceptor(ctx, in, info, handler)
  2247  }
  2248  
  2249  func _ChaincodeInstanceService_EventsStream_Handler(srv interface{}, stream grpc.ServerStream) error {
  2250  	m := new(ChaincodeInstanceEventsStreamRequest)
  2251  	if err := stream.RecvMsg(m); err != nil {
  2252  		return err
  2253  	}
  2254  	return srv.(ChaincodeInstanceServiceServer).EventsStream(m, &chaincodeInstanceServiceEventsStreamServer{stream})
  2255  }
  2256  
  2257  type ChaincodeInstanceService_EventsStreamServer interface {
  2258  	Send(*ChaincodeEvent) error
  2259  	grpc.ServerStream
  2260  }
  2261  
  2262  type chaincodeInstanceServiceEventsStreamServer struct {
  2263  	grpc.ServerStream
  2264  }
  2265  
  2266  func (x *chaincodeInstanceServiceEventsStreamServer) Send(m *ChaincodeEvent) error {
  2267  	return x.ServerStream.SendMsg(m)
  2268  }
  2269  
  2270  func _ChaincodeInstanceService_Events_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2271  	in := new(ChaincodeInstanceEventsRequest)
  2272  	if err := dec(in); err != nil {
  2273  		return nil, err
  2274  	}
  2275  	if interceptor == nil {
  2276  		return srv.(ChaincodeInstanceServiceServer).Events(ctx, in)
  2277  	}
  2278  	info := &grpc.UnaryServerInfo{
  2279  		Server:     srv,
  2280  		FullMethod: "/cckit.gateway.ChaincodeInstanceService/Events",
  2281  	}
  2282  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2283  		return srv.(ChaincodeInstanceServiceServer).Events(ctx, req.(*ChaincodeInstanceEventsRequest))
  2284  	}
  2285  	return interceptor(ctx, in, info, handler)
  2286  }
  2287  
  2288  var _ChaincodeInstanceService_serviceDesc = grpc.ServiceDesc{
  2289  	ServiceName: "cckit.gateway.ChaincodeInstanceService",
  2290  	HandlerType: (*ChaincodeInstanceServiceServer)(nil),
  2291  	Methods: []grpc.MethodDesc{
  2292  		{
  2293  			MethodName: "Exec",
  2294  			Handler:    _ChaincodeInstanceService_Exec_Handler,
  2295  		},
  2296  		{
  2297  			MethodName: "Query",
  2298  			Handler:    _ChaincodeInstanceService_Query_Handler,
  2299  		},
  2300  		{
  2301  			MethodName: "Invoke",
  2302  			Handler:    _ChaincodeInstanceService_Invoke_Handler,
  2303  		},
  2304  		{
  2305  			MethodName: "Events",
  2306  			Handler:    _ChaincodeInstanceService_Events_Handler,
  2307  		},
  2308  	},
  2309  	Streams: []grpc.StreamDesc{
  2310  		{
  2311  			StreamName:    "EventsStream",
  2312  			Handler:       _ChaincodeInstanceService_EventsStream_Handler,
  2313  			ServerStreams: true,
  2314  		},
  2315  	},
  2316  	Metadata: "chaincode.proto",
  2317  }
  2318  
  2319  // ChaincodeInstanceEventsServiceClient is the client API for ChaincodeInstanceEventsService service.
  2320  //
  2321  // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
  2322  type ChaincodeInstanceEventsServiceClient interface {
  2323  	// Chaincode events stream
  2324  	EventsStream(ctx context.Context, in *ChaincodeInstanceEventsStreamRequest, opts ...grpc.CallOption) (ChaincodeInstanceEventsService_EventsStreamClient, error)
  2325  	// Chaincode events s
  2326  	Events(ctx context.Context, in *ChaincodeInstanceEventsRequest, opts ...grpc.CallOption) (*ChaincodeEvents, error)
  2327  }
  2328  
  2329  type chaincodeInstanceEventsServiceClient struct {
  2330  	cc grpc.ClientConnInterface
  2331  }
  2332  
  2333  func NewChaincodeInstanceEventsServiceClient(cc grpc.ClientConnInterface) ChaincodeInstanceEventsServiceClient {
  2334  	return &chaincodeInstanceEventsServiceClient{cc}
  2335  }
  2336  
  2337  func (c *chaincodeInstanceEventsServiceClient) EventsStream(ctx context.Context, in *ChaincodeInstanceEventsStreamRequest, opts ...grpc.CallOption) (ChaincodeInstanceEventsService_EventsStreamClient, error) {
  2338  	stream, err := c.cc.NewStream(ctx, &_ChaincodeInstanceEventsService_serviceDesc.Streams[0], "/cckit.gateway.ChaincodeInstanceEventsService/EventsStream", opts...)
  2339  	if err != nil {
  2340  		return nil, err
  2341  	}
  2342  	x := &chaincodeInstanceEventsServiceEventsStreamClient{stream}
  2343  	if err := x.ClientStream.SendMsg(in); err != nil {
  2344  		return nil, err
  2345  	}
  2346  	if err := x.ClientStream.CloseSend(); err != nil {
  2347  		return nil, err
  2348  	}
  2349  	return x, nil
  2350  }
  2351  
  2352  type ChaincodeInstanceEventsService_EventsStreamClient interface {
  2353  	Recv() (*ChaincodeEvent, error)
  2354  	grpc.ClientStream
  2355  }
  2356  
  2357  type chaincodeInstanceEventsServiceEventsStreamClient struct {
  2358  	grpc.ClientStream
  2359  }
  2360  
  2361  func (x *chaincodeInstanceEventsServiceEventsStreamClient) Recv() (*ChaincodeEvent, error) {
  2362  	m := new(ChaincodeEvent)
  2363  	if err := x.ClientStream.RecvMsg(m); err != nil {
  2364  		return nil, err
  2365  	}
  2366  	return m, nil
  2367  }
  2368  
  2369  func (c *chaincodeInstanceEventsServiceClient) Events(ctx context.Context, in *ChaincodeInstanceEventsRequest, opts ...grpc.CallOption) (*ChaincodeEvents, error) {
  2370  	out := new(ChaincodeEvents)
  2371  	err := c.cc.Invoke(ctx, "/cckit.gateway.ChaincodeInstanceEventsService/Events", in, out, opts...)
  2372  	if err != nil {
  2373  		return nil, err
  2374  	}
  2375  	return out, nil
  2376  }
  2377  
  2378  // ChaincodeInstanceEventsServiceServer is the server API for ChaincodeInstanceEventsService service.
  2379  type ChaincodeInstanceEventsServiceServer interface {
  2380  	// Chaincode events stream
  2381  	EventsStream(*ChaincodeInstanceEventsStreamRequest, ChaincodeInstanceEventsService_EventsStreamServer) error
  2382  	// Chaincode events s
  2383  	Events(context.Context, *ChaincodeInstanceEventsRequest) (*ChaincodeEvents, error)
  2384  }
  2385  
  2386  // UnimplementedChaincodeInstanceEventsServiceServer can be embedded to have forward compatible implementations.
  2387  type UnimplementedChaincodeInstanceEventsServiceServer struct {
  2388  }
  2389  
  2390  func (*UnimplementedChaincodeInstanceEventsServiceServer) EventsStream(*ChaincodeInstanceEventsStreamRequest, ChaincodeInstanceEventsService_EventsStreamServer) error {
  2391  	return status.Errorf(codes.Unimplemented, "method EventsStream not implemented")
  2392  }
  2393  func (*UnimplementedChaincodeInstanceEventsServiceServer) Events(context.Context, *ChaincodeInstanceEventsRequest) (*ChaincodeEvents, error) {
  2394  	return nil, status.Errorf(codes.Unimplemented, "method Events not implemented")
  2395  }
  2396  
  2397  func RegisterChaincodeInstanceEventsServiceServer(s *grpc.Server, srv ChaincodeInstanceEventsServiceServer) {
  2398  	s.RegisterService(&_ChaincodeInstanceEventsService_serviceDesc, srv)
  2399  }
  2400  
  2401  func _ChaincodeInstanceEventsService_EventsStream_Handler(srv interface{}, stream grpc.ServerStream) error {
  2402  	m := new(ChaincodeInstanceEventsStreamRequest)
  2403  	if err := stream.RecvMsg(m); err != nil {
  2404  		return err
  2405  	}
  2406  	return srv.(ChaincodeInstanceEventsServiceServer).EventsStream(m, &chaincodeInstanceEventsServiceEventsStreamServer{stream})
  2407  }
  2408  
  2409  type ChaincodeInstanceEventsService_EventsStreamServer interface {
  2410  	Send(*ChaincodeEvent) error
  2411  	grpc.ServerStream
  2412  }
  2413  
  2414  type chaincodeInstanceEventsServiceEventsStreamServer struct {
  2415  	grpc.ServerStream
  2416  }
  2417  
  2418  func (x *chaincodeInstanceEventsServiceEventsStreamServer) Send(m *ChaincodeEvent) error {
  2419  	return x.ServerStream.SendMsg(m)
  2420  }
  2421  
  2422  func _ChaincodeInstanceEventsService_Events_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2423  	in := new(ChaincodeInstanceEventsRequest)
  2424  	if err := dec(in); err != nil {
  2425  		return nil, err
  2426  	}
  2427  	if interceptor == nil {
  2428  		return srv.(ChaincodeInstanceEventsServiceServer).Events(ctx, in)
  2429  	}
  2430  	info := &grpc.UnaryServerInfo{
  2431  		Server:     srv,
  2432  		FullMethod: "/cckit.gateway.ChaincodeInstanceEventsService/Events",
  2433  	}
  2434  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2435  		return srv.(ChaincodeInstanceEventsServiceServer).Events(ctx, req.(*ChaincodeInstanceEventsRequest))
  2436  	}
  2437  	return interceptor(ctx, in, info, handler)
  2438  }
  2439  
  2440  var _ChaincodeInstanceEventsService_serviceDesc = grpc.ServiceDesc{
  2441  	ServiceName: "cckit.gateway.ChaincodeInstanceEventsService",
  2442  	HandlerType: (*ChaincodeInstanceEventsServiceServer)(nil),
  2443  	Methods: []grpc.MethodDesc{
  2444  		{
  2445  			MethodName: "Events",
  2446  			Handler:    _ChaincodeInstanceEventsService_Events_Handler,
  2447  		},
  2448  	},
  2449  	Streams: []grpc.StreamDesc{
  2450  		{
  2451  			StreamName:    "EventsStream",
  2452  			Handler:       _ChaincodeInstanceEventsService_EventsStream_Handler,
  2453  			ServerStreams: true,
  2454  		},
  2455  	},
  2456  	Metadata: "chaincode.proto",
  2457  }