From 97860f994d43d600d5914327ee8f8ec8b9338e12 Mon Sep 17 00:00:00 2001 From: mmsqe Date: Mon, 20 Oct 2025 18:23:50 +0800 Subject: [PATCH 1/8] feat: support override for both evm and cosmos states add proto mock --- CHANGELOG.md | 1 + api/cosmos/evm/vm/v1/query.pulsar.go | 6715 +++++++++++------ api/cosmos/evm/vm/v1/query_grpc.pb.go | 39 + proto/cosmos/evm/vm/v1/query.proto | 34 + rpc/backend/mocks/evm_query_client.go | 113 +- .../rpc/backend/test_evm_query_client.go | 9 + x/vm/types/query.pb.go | 1399 +++- x/vm/types/query.pb.gw.go | 101 + 8 files changed, 6014 insertions(+), 2397 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2fecda1a2..593819bde 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -21,6 +21,7 @@ - [\#658](https://github.com/cosmos/evm/pull/658) Fix race condition between legacypool's RemoveTx and runReorg. - [\#687](https://github.com/cosmos/evm/pull/687) Avoid blocking node shutdown when evm indexer is enabled, log startup failures instead of using errgroup. - [\#689](https://github.com/cosmos/evm/pull/689) Align debug addr for hex address. +- [\#713](https://github.com/cosmos/evm/pull/713) Support cosmos state overrides in eth_call for dynamic precompiles. - [\#668](https://github.com/cosmos/evm/pull/668) Fix panic in legacy mempool when Reset() was called with a skipped header between old and new block. - [\#723](https://github.com/cosmos/evm/pull/723) Fix TransactionIndex in receipt generation to use actual EthTxIndex instead of loop index. - [\#729](https://github.com/cosmos/evm/pull/729) Remove non-deterministic state mutation from EVM pre-blocker. diff --git a/api/cosmos/evm/vm/v1/query.pulsar.go b/api/cosmos/evm/vm/v1/query.pulsar.go index 470635d47..7ab45a661 100644 --- a/api/cosmos/evm/vm/v1/query.pulsar.go +++ b/api/cosmos/evm/vm/v1/query.pulsar.go @@ -809,25 +809,25 @@ func (x *fastReflection_QueryConfigResponse) ProtoMethods() *protoiface.Methods } var ( - md_QueryAccountRequest protoreflect.MessageDescriptor - fd_QueryAccountRequest_address protoreflect.FieldDescriptor + md_QueryPrecompileRequest protoreflect.MessageDescriptor + fd_QueryPrecompileRequest_address protoreflect.FieldDescriptor ) func init() { file_cosmos_evm_vm_v1_query_proto_init() - md_QueryAccountRequest = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryAccountRequest") - fd_QueryAccountRequest_address = md_QueryAccountRequest.Fields().ByName("address") + md_QueryPrecompileRequest = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryPrecompileRequest") + fd_QueryPrecompileRequest_address = md_QueryPrecompileRequest.Fields().ByName("address") } -var _ protoreflect.Message = (*fastReflection_QueryAccountRequest)(nil) +var _ protoreflect.Message = (*fastReflection_QueryPrecompileRequest)(nil) -type fastReflection_QueryAccountRequest QueryAccountRequest +type fastReflection_QueryPrecompileRequest QueryPrecompileRequest -func (x *QueryAccountRequest) ProtoReflect() protoreflect.Message { - return (*fastReflection_QueryAccountRequest)(x) +func (x *QueryPrecompileRequest) ProtoReflect() protoreflect.Message { + return (*fastReflection_QueryPrecompileRequest)(x) } -func (x *QueryAccountRequest) slowProtoReflect() protoreflect.Message { +func (x *QueryPrecompileRequest) slowProtoReflect() protoreflect.Message { mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[2] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -839,43 +839,43 @@ func (x *QueryAccountRequest) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_QueryAccountRequest_messageType fastReflection_QueryAccountRequest_messageType -var _ protoreflect.MessageType = fastReflection_QueryAccountRequest_messageType{} +var _fastReflection_QueryPrecompileRequest_messageType fastReflection_QueryPrecompileRequest_messageType +var _ protoreflect.MessageType = fastReflection_QueryPrecompileRequest_messageType{} -type fastReflection_QueryAccountRequest_messageType struct{} +type fastReflection_QueryPrecompileRequest_messageType struct{} -func (x fastReflection_QueryAccountRequest_messageType) Zero() protoreflect.Message { - return (*fastReflection_QueryAccountRequest)(nil) +func (x fastReflection_QueryPrecompileRequest_messageType) Zero() protoreflect.Message { + return (*fastReflection_QueryPrecompileRequest)(nil) } -func (x fastReflection_QueryAccountRequest_messageType) New() protoreflect.Message { - return new(fastReflection_QueryAccountRequest) +func (x fastReflection_QueryPrecompileRequest_messageType) New() protoreflect.Message { + return new(fastReflection_QueryPrecompileRequest) } -func (x fastReflection_QueryAccountRequest_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_QueryAccountRequest +func (x fastReflection_QueryPrecompileRequest_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_QueryPrecompileRequest } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_QueryAccountRequest) Descriptor() protoreflect.MessageDescriptor { - return md_QueryAccountRequest +func (x *fastReflection_QueryPrecompileRequest) Descriptor() protoreflect.MessageDescriptor { + return md_QueryPrecompileRequest } // Type returns the message type, which encapsulates both Go and protobuf // type information. If the Go type information is not needed, // it is recommended that the message descriptor be used instead. -func (x *fastReflection_QueryAccountRequest) Type() protoreflect.MessageType { - return _fastReflection_QueryAccountRequest_messageType +func (x *fastReflection_QueryPrecompileRequest) Type() protoreflect.MessageType { + return _fastReflection_QueryPrecompileRequest_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_QueryAccountRequest) New() protoreflect.Message { - return new(fastReflection_QueryAccountRequest) +func (x *fastReflection_QueryPrecompileRequest) New() protoreflect.Message { + return new(fastReflection_QueryPrecompileRequest) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_QueryAccountRequest) Interface() protoreflect.ProtoMessage { - return (*QueryAccountRequest)(x) +func (x *fastReflection_QueryPrecompileRequest) Interface() protoreflect.ProtoMessage { + return (*QueryPrecompileRequest)(x) } // Range iterates over every populated field in an undefined order, @@ -883,10 +883,10 @@ func (x *fastReflection_QueryAccountRequest) Interface() protoreflect.ProtoMessa // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_QueryAccountRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { +func (x *fastReflection_QueryPrecompileRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { if x.Address != "" { value := protoreflect.ValueOfString(x.Address) - if !f(fd_QueryAccountRequest_address, value) { + if !f(fd_QueryPrecompileRequest_address, value) { return } } @@ -903,15 +903,15 @@ func (x *fastReflection_QueryAccountRequest) Range(f func(protoreflect.FieldDesc // In other cases (aside from the nullable cases above), // a proto3 scalar field is populated if it contains a non-zero value, and // a repeated field is populated if it is non-empty. -func (x *fastReflection_QueryAccountRequest) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_QueryPrecompileRequest) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryAccountRequest.address": + case "cosmos.evm.vm.v1.QueryPrecompileRequest.address": return x.Address != "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryPrecompileRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryPrecompileRequest does not contain field %s", fd.FullName())) } } @@ -921,15 +921,15 @@ func (x *fastReflection_QueryAccountRequest) Has(fd protoreflect.FieldDescriptor // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryAccountRequest) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_QueryPrecompileRequest) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryAccountRequest.address": + case "cosmos.evm.vm.v1.QueryPrecompileRequest.address": x.Address = "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryPrecompileRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryPrecompileRequest does not contain field %s", fd.FullName())) } } @@ -939,16 +939,16 @@ func (x *fastReflection_QueryAccountRequest) Clear(fd protoreflect.FieldDescript // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_QueryAccountRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryPrecompileRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "cosmos.evm.vm.v1.QueryAccountRequest.address": + case "cosmos.evm.vm.v1.QueryPrecompileRequest.address": value := x.Address return protoreflect.ValueOfString(value) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryPrecompileRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountRequest does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryPrecompileRequest does not contain field %s", descriptor.FullName())) } } @@ -962,15 +962,15 @@ func (x *fastReflection_QueryAccountRequest) Get(descriptor protoreflect.FieldDe // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryAccountRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_QueryPrecompileRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryAccountRequest.address": + case "cosmos.evm.vm.v1.QueryPrecompileRequest.address": x.Address = value.Interface().(string) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryPrecompileRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryPrecompileRequest does not contain field %s", fd.FullName())) } } @@ -984,40 +984,40 @@ func (x *fastReflection_QueryAccountRequest) Set(fd protoreflect.FieldDescriptor // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryAccountRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryPrecompileRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryAccountRequest.address": - panic(fmt.Errorf("field address of message cosmos.evm.vm.v1.QueryAccountRequest is not mutable")) + case "cosmos.evm.vm.v1.QueryPrecompileRequest.address": + panic(fmt.Errorf("field address of message cosmos.evm.vm.v1.QueryPrecompileRequest is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryPrecompileRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryPrecompileRequest does not contain field %s", fd.FullName())) } } // NewField returns a new value that is assignable to the field // for the given descriptor. For scalars, this returns the default value. // For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_QueryAccountRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryPrecompileRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryAccountRequest.address": + case "cosmos.evm.vm.v1.QueryPrecompileRequest.address": return protoreflect.ValueOfString("") default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryPrecompileRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryPrecompileRequest does not contain field %s", fd.FullName())) } } // WhichOneof reports which field within the oneof is populated, // returning nil if none are populated. // It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_QueryAccountRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_QueryPrecompileRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryAccountRequest", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryPrecompileRequest", d.FullName())) } panic("unreachable") } @@ -1025,7 +1025,7 @@ func (x *fastReflection_QueryAccountRequest) WhichOneof(d protoreflect.OneofDesc // GetUnknown retrieves the entire list of unknown fields. // The caller may only mutate the contents of the RawFields // if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_QueryAccountRequest) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_QueryPrecompileRequest) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -1036,7 +1036,7 @@ func (x *fastReflection_QueryAccountRequest) GetUnknown() protoreflect.RawFields // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryAccountRequest) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_QueryPrecompileRequest) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -1048,7 +1048,7 @@ func (x *fastReflection_QueryAccountRequest) SetUnknown(fields protoreflect.RawF // message type, but the details are implementation dependent. // Validity is not part of the protobuf data model, and may not // be preserved in marshaling or other operations. -func (x *fastReflection_QueryAccountRequest) IsValid() bool { +func (x *fastReflection_QueryPrecompileRequest) IsValid() bool { return x != nil } @@ -1058,9 +1058,9 @@ func (x *fastReflection_QueryAccountRequest) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_QueryAccountRequest) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_QueryPrecompileRequest) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*QueryAccountRequest) + x := input.Message.Interface().(*QueryPrecompileRequest) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -1086,7 +1086,7 @@ func (x *fastReflection_QueryAccountRequest) ProtoMethods() *protoiface.Methods } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*QueryAccountRequest) + x := input.Message.Interface().(*QueryPrecompileRequest) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -1123,7 +1123,7 @@ func (x *fastReflection_QueryAccountRequest) ProtoMethods() *protoiface.Methods }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*QueryAccountRequest) + x := input.Message.Interface().(*QueryPrecompileRequest) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -1155,10 +1155,10 @@ func (x *fastReflection_QueryAccountRequest) ProtoMethods() *protoiface.Methods fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryAccountRequest: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryPrecompileRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryAccountRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryPrecompileRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -1229,29 +1229,27 @@ func (x *fastReflection_QueryAccountRequest) ProtoMethods() *protoiface.Methods } var ( - md_QueryAccountResponse protoreflect.MessageDescriptor - fd_QueryAccountResponse_balance protoreflect.FieldDescriptor - fd_QueryAccountResponse_code_hash protoreflect.FieldDescriptor - fd_QueryAccountResponse_nonce protoreflect.FieldDescriptor + md_QueryPrecompileResponse protoreflect.MessageDescriptor + fd_QueryPrecompileResponse_is_precompile protoreflect.FieldDescriptor + fd_QueryPrecompileResponse_is_static protoreflect.FieldDescriptor ) func init() { file_cosmos_evm_vm_v1_query_proto_init() - md_QueryAccountResponse = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryAccountResponse") - fd_QueryAccountResponse_balance = md_QueryAccountResponse.Fields().ByName("balance") - fd_QueryAccountResponse_code_hash = md_QueryAccountResponse.Fields().ByName("code_hash") - fd_QueryAccountResponse_nonce = md_QueryAccountResponse.Fields().ByName("nonce") + md_QueryPrecompileResponse = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryPrecompileResponse") + fd_QueryPrecompileResponse_is_precompile = md_QueryPrecompileResponse.Fields().ByName("is_precompile") + fd_QueryPrecompileResponse_is_static = md_QueryPrecompileResponse.Fields().ByName("is_static") } -var _ protoreflect.Message = (*fastReflection_QueryAccountResponse)(nil) +var _ protoreflect.Message = (*fastReflection_QueryPrecompileResponse)(nil) -type fastReflection_QueryAccountResponse QueryAccountResponse +type fastReflection_QueryPrecompileResponse QueryPrecompileResponse -func (x *QueryAccountResponse) ProtoReflect() protoreflect.Message { - return (*fastReflection_QueryAccountResponse)(x) +func (x *QueryPrecompileResponse) ProtoReflect() protoreflect.Message { + return (*fastReflection_QueryPrecompileResponse)(x) } -func (x *QueryAccountResponse) slowProtoReflect() protoreflect.Message { +func (x *QueryPrecompileResponse) slowProtoReflect() protoreflect.Message { mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1263,43 +1261,43 @@ func (x *QueryAccountResponse) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_QueryAccountResponse_messageType fastReflection_QueryAccountResponse_messageType -var _ protoreflect.MessageType = fastReflection_QueryAccountResponse_messageType{} +var _fastReflection_QueryPrecompileResponse_messageType fastReflection_QueryPrecompileResponse_messageType +var _ protoreflect.MessageType = fastReflection_QueryPrecompileResponse_messageType{} -type fastReflection_QueryAccountResponse_messageType struct{} +type fastReflection_QueryPrecompileResponse_messageType struct{} -func (x fastReflection_QueryAccountResponse_messageType) Zero() protoreflect.Message { - return (*fastReflection_QueryAccountResponse)(nil) +func (x fastReflection_QueryPrecompileResponse_messageType) Zero() protoreflect.Message { + return (*fastReflection_QueryPrecompileResponse)(nil) } -func (x fastReflection_QueryAccountResponse_messageType) New() protoreflect.Message { - return new(fastReflection_QueryAccountResponse) +func (x fastReflection_QueryPrecompileResponse_messageType) New() protoreflect.Message { + return new(fastReflection_QueryPrecompileResponse) } -func (x fastReflection_QueryAccountResponse_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_QueryAccountResponse +func (x fastReflection_QueryPrecompileResponse_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_QueryPrecompileResponse } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_QueryAccountResponse) Descriptor() protoreflect.MessageDescriptor { - return md_QueryAccountResponse +func (x *fastReflection_QueryPrecompileResponse) Descriptor() protoreflect.MessageDescriptor { + return md_QueryPrecompileResponse } // Type returns the message type, which encapsulates both Go and protobuf // type information. If the Go type information is not needed, // it is recommended that the message descriptor be used instead. -func (x *fastReflection_QueryAccountResponse) Type() protoreflect.MessageType { - return _fastReflection_QueryAccountResponse_messageType +func (x *fastReflection_QueryPrecompileResponse) Type() protoreflect.MessageType { + return _fastReflection_QueryPrecompileResponse_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_QueryAccountResponse) New() protoreflect.Message { - return new(fastReflection_QueryAccountResponse) +func (x *fastReflection_QueryPrecompileResponse) New() protoreflect.Message { + return new(fastReflection_QueryPrecompileResponse) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_QueryAccountResponse) Interface() protoreflect.ProtoMessage { - return (*QueryAccountResponse)(x) +func (x *fastReflection_QueryPrecompileResponse) Interface() protoreflect.ProtoMessage { + return (*QueryPrecompileResponse)(x) } // Range iterates over every populated field in an undefined order, @@ -1307,22 +1305,16 @@ func (x *fastReflection_QueryAccountResponse) Interface() protoreflect.ProtoMess // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_QueryAccountResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.Balance != "" { - value := protoreflect.ValueOfString(x.Balance) - if !f(fd_QueryAccountResponse_balance, value) { - return - } - } - if x.CodeHash != "" { - value := protoreflect.ValueOfString(x.CodeHash) - if !f(fd_QueryAccountResponse_code_hash, value) { +func (x *fastReflection_QueryPrecompileResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.IsPrecompile != false { + value := protoreflect.ValueOfBool(x.IsPrecompile) + if !f(fd_QueryPrecompileResponse_is_precompile, value) { return } } - if x.Nonce != uint64(0) { - value := protoreflect.ValueOfUint64(x.Nonce) - if !f(fd_QueryAccountResponse_nonce, value) { + if x.IsStatic != false { + value := protoreflect.ValueOfBool(x.IsStatic) + if !f(fd_QueryPrecompileResponse_is_static, value) { return } } @@ -1339,19 +1331,17 @@ func (x *fastReflection_QueryAccountResponse) Range(f func(protoreflect.FieldDes // In other cases (aside from the nullable cases above), // a proto3 scalar field is populated if it contains a non-zero value, and // a repeated field is populated if it is non-empty. -func (x *fastReflection_QueryAccountResponse) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_QueryPrecompileResponse) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryAccountResponse.balance": - return x.Balance != "" - case "cosmos.evm.vm.v1.QueryAccountResponse.code_hash": - return x.CodeHash != "" - case "cosmos.evm.vm.v1.QueryAccountResponse.nonce": - return x.Nonce != uint64(0) + case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_precompile": + return x.IsPrecompile != false + case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_static": + return x.IsStatic != false default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryPrecompileResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryPrecompileResponse does not contain field %s", fd.FullName())) } } @@ -1361,19 +1351,17 @@ func (x *fastReflection_QueryAccountResponse) Has(fd protoreflect.FieldDescripto // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryAccountResponse) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_QueryPrecompileResponse) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryAccountResponse.balance": - x.Balance = "" - case "cosmos.evm.vm.v1.QueryAccountResponse.code_hash": - x.CodeHash = "" - case "cosmos.evm.vm.v1.QueryAccountResponse.nonce": - x.Nonce = uint64(0) + case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_precompile": + x.IsPrecompile = false + case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_static": + x.IsStatic = false default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryPrecompileResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryPrecompileResponse does not contain field %s", fd.FullName())) } } @@ -1383,22 +1371,19 @@ func (x *fastReflection_QueryAccountResponse) Clear(fd protoreflect.FieldDescrip // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_QueryAccountResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryPrecompileResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "cosmos.evm.vm.v1.QueryAccountResponse.balance": - value := x.Balance - return protoreflect.ValueOfString(value) - case "cosmos.evm.vm.v1.QueryAccountResponse.code_hash": - value := x.CodeHash - return protoreflect.ValueOfString(value) - case "cosmos.evm.vm.v1.QueryAccountResponse.nonce": - value := x.Nonce - return protoreflect.ValueOfUint64(value) + case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_precompile": + value := x.IsPrecompile + return protoreflect.ValueOfBool(value) + case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_static": + value := x.IsStatic + return protoreflect.ValueOfBool(value) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryPrecompileResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountResponse does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryPrecompileResponse does not contain field %s", descriptor.FullName())) } } @@ -1412,19 +1397,17 @@ func (x *fastReflection_QueryAccountResponse) Get(descriptor protoreflect.FieldD // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryAccountResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_QueryPrecompileResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryAccountResponse.balance": - x.Balance = value.Interface().(string) - case "cosmos.evm.vm.v1.QueryAccountResponse.code_hash": - x.CodeHash = value.Interface().(string) - case "cosmos.evm.vm.v1.QueryAccountResponse.nonce": - x.Nonce = value.Uint() + case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_precompile": + x.IsPrecompile = value.Bool() + case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_static": + x.IsStatic = value.Bool() default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryPrecompileResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryPrecompileResponse does not contain field %s", fd.FullName())) } } @@ -1438,48 +1421,44 @@ func (x *fastReflection_QueryAccountResponse) Set(fd protoreflect.FieldDescripto // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryAccountResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryPrecompileResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryAccountResponse.balance": - panic(fmt.Errorf("field balance of message cosmos.evm.vm.v1.QueryAccountResponse is not mutable")) - case "cosmos.evm.vm.v1.QueryAccountResponse.code_hash": - panic(fmt.Errorf("field code_hash of message cosmos.evm.vm.v1.QueryAccountResponse is not mutable")) - case "cosmos.evm.vm.v1.QueryAccountResponse.nonce": - panic(fmt.Errorf("field nonce of message cosmos.evm.vm.v1.QueryAccountResponse is not mutable")) + case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_precompile": + panic(fmt.Errorf("field is_precompile of message cosmos.evm.vm.v1.QueryPrecompileResponse is not mutable")) + case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_static": + panic(fmt.Errorf("field is_static of message cosmos.evm.vm.v1.QueryPrecompileResponse is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryPrecompileResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryPrecompileResponse does not contain field %s", fd.FullName())) } } // NewField returns a new value that is assignable to the field // for the given descriptor. For scalars, this returns the default value. // For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_QueryAccountResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryPrecompileResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryAccountResponse.balance": - return protoreflect.ValueOfString("") - case "cosmos.evm.vm.v1.QueryAccountResponse.code_hash": - return protoreflect.ValueOfString("") - case "cosmos.evm.vm.v1.QueryAccountResponse.nonce": - return protoreflect.ValueOfUint64(uint64(0)) + case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_precompile": + return protoreflect.ValueOfBool(false) + case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_static": + return protoreflect.ValueOfBool(false) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryPrecompileResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryPrecompileResponse does not contain field %s", fd.FullName())) } } // WhichOneof reports which field within the oneof is populated, // returning nil if none are populated. // It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_QueryAccountResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_QueryPrecompileResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryAccountResponse", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryPrecompileResponse", d.FullName())) } panic("unreachable") } @@ -1487,7 +1466,7 @@ func (x *fastReflection_QueryAccountResponse) WhichOneof(d protoreflect.OneofDes // GetUnknown retrieves the entire list of unknown fields. // The caller may only mutate the contents of the RawFields // if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_QueryAccountResponse) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_QueryPrecompileResponse) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -1498,7 +1477,7 @@ func (x *fastReflection_QueryAccountResponse) GetUnknown() protoreflect.RawField // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryAccountResponse) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_QueryPrecompileResponse) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -1510,7 +1489,7 @@ func (x *fastReflection_QueryAccountResponse) SetUnknown(fields protoreflect.Raw // message type, but the details are implementation dependent. // Validity is not part of the protobuf data model, and may not // be preserved in marshaling or other operations. -func (x *fastReflection_QueryAccountResponse) IsValid() bool { +func (x *fastReflection_QueryPrecompileResponse) IsValid() bool { return x != nil } @@ -1520,9 +1499,9 @@ func (x *fastReflection_QueryAccountResponse) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_QueryAccountResponse) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_QueryPrecompileResponse) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*QueryAccountResponse) + x := input.Message.Interface().(*QueryPrecompileResponse) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -1534,16 +1513,11 @@ func (x *fastReflection_QueryAccountResponse) ProtoMethods() *protoiface.Methods var n int var l int _ = l - l = len(x.Balance) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.CodeHash) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) + if x.IsPrecompile { + n += 2 } - if x.Nonce != 0 { - n += 1 + runtime.Sov(uint64(x.Nonce)) + if x.IsStatic { + n += 2 } if x.unknownFields != nil { n += len(x.unknownFields) @@ -1555,7 +1529,7 @@ func (x *fastReflection_QueryAccountResponse) ProtoMethods() *protoiface.Methods } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*QueryAccountResponse) + x := input.Message.Interface().(*QueryPrecompileResponse) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -1574,24 +1548,25 @@ func (x *fastReflection_QueryAccountResponse) ProtoMethods() *protoiface.Methods i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } - if x.Nonce != 0 { - i = runtime.EncodeVarint(dAtA, i, uint64(x.Nonce)) + if x.IsStatic { i-- - dAtA[i] = 0x18 - } - if len(x.CodeHash) > 0 { - i -= len(x.CodeHash) - copy(dAtA[i:], x.CodeHash) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.CodeHash))) + if x.IsStatic { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } i-- - dAtA[i] = 0x12 + dAtA[i] = 0x10 } - if len(x.Balance) > 0 { - i -= len(x.Balance) - copy(dAtA[i:], x.Balance) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Balance))) + if x.IsPrecompile { i-- - dAtA[i] = 0xa + if x.IsPrecompile { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x8 } if input.Buf != nil { input.Buf = append(input.Buf, dAtA...) @@ -1604,7 +1579,7 @@ func (x *fastReflection_QueryAccountResponse) ProtoMethods() *protoiface.Methods }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*QueryAccountResponse) + x := input.Message.Interface().(*QueryPrecompileResponse) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -1636,17 +1611,17 @@ func (x *fastReflection_QueryAccountResponse) ProtoMethods() *protoiface.Methods fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryAccountResponse: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryPrecompileResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryAccountResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryPrecompileResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Balance", wireType) + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field IsPrecompile", wireType) } - var stringLen uint64 + var v int for shift := uint(0); ; shift += 7 { if shift >= 64 { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow @@ -1656,61 +1631,17 @@ func (x *fastReflection_QueryAccountResponse) ProtoMethods() *protoiface.Methods } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + v |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - x.Balance = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex + x.IsPrecompile = bool(v != 0) case 2: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field CodeHash", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow - } - if iNdEx >= l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - x.CodeHash = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: if wireType != 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Nonce", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field IsStatic", wireType) } - x.Nonce = 0 + var v int for shift := uint(0); ; shift += 7 { if shift >= 64 { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow @@ -1720,11 +1651,12 @@ func (x *fastReflection_QueryAccountResponse) ProtoMethods() *protoiface.Methods } b := dAtA[iNdEx] iNdEx++ - x.Nonce |= uint64(b&0x7F) << shift + v |= int(b&0x7F) << shift if b < 0x80 { break } } + x.IsStatic = bool(v != 0) default: iNdEx = preIndex skippy, err := runtime.Skip(dAtA[iNdEx:]) @@ -1761,25 +1693,25 @@ func (x *fastReflection_QueryAccountResponse) ProtoMethods() *protoiface.Methods } var ( - md_QueryCosmosAccountRequest protoreflect.MessageDescriptor - fd_QueryCosmosAccountRequest_address protoreflect.FieldDescriptor + md_QueryAccountRequest protoreflect.MessageDescriptor + fd_QueryAccountRequest_address protoreflect.FieldDescriptor ) func init() { file_cosmos_evm_vm_v1_query_proto_init() - md_QueryCosmosAccountRequest = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryCosmosAccountRequest") - fd_QueryCosmosAccountRequest_address = md_QueryCosmosAccountRequest.Fields().ByName("address") + md_QueryAccountRequest = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryAccountRequest") + fd_QueryAccountRequest_address = md_QueryAccountRequest.Fields().ByName("address") } -var _ protoreflect.Message = (*fastReflection_QueryCosmosAccountRequest)(nil) +var _ protoreflect.Message = (*fastReflection_QueryAccountRequest)(nil) -type fastReflection_QueryCosmosAccountRequest QueryCosmosAccountRequest +type fastReflection_QueryAccountRequest QueryAccountRequest -func (x *QueryCosmosAccountRequest) ProtoReflect() protoreflect.Message { - return (*fastReflection_QueryCosmosAccountRequest)(x) +func (x *QueryAccountRequest) ProtoReflect() protoreflect.Message { + return (*fastReflection_QueryAccountRequest)(x) } -func (x *QueryCosmosAccountRequest) slowProtoReflect() protoreflect.Message { +func (x *QueryAccountRequest) slowProtoReflect() protoreflect.Message { mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1791,43 +1723,43 @@ func (x *QueryCosmosAccountRequest) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_QueryCosmosAccountRequest_messageType fastReflection_QueryCosmosAccountRequest_messageType -var _ protoreflect.MessageType = fastReflection_QueryCosmosAccountRequest_messageType{} +var _fastReflection_QueryAccountRequest_messageType fastReflection_QueryAccountRequest_messageType +var _ protoreflect.MessageType = fastReflection_QueryAccountRequest_messageType{} -type fastReflection_QueryCosmosAccountRequest_messageType struct{} +type fastReflection_QueryAccountRequest_messageType struct{} -func (x fastReflection_QueryCosmosAccountRequest_messageType) Zero() protoreflect.Message { - return (*fastReflection_QueryCosmosAccountRequest)(nil) +func (x fastReflection_QueryAccountRequest_messageType) Zero() protoreflect.Message { + return (*fastReflection_QueryAccountRequest)(nil) } -func (x fastReflection_QueryCosmosAccountRequest_messageType) New() protoreflect.Message { - return new(fastReflection_QueryCosmosAccountRequest) +func (x fastReflection_QueryAccountRequest_messageType) New() protoreflect.Message { + return new(fastReflection_QueryAccountRequest) } -func (x fastReflection_QueryCosmosAccountRequest_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_QueryCosmosAccountRequest +func (x fastReflection_QueryAccountRequest_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_QueryAccountRequest } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_QueryCosmosAccountRequest) Descriptor() protoreflect.MessageDescriptor { - return md_QueryCosmosAccountRequest +func (x *fastReflection_QueryAccountRequest) Descriptor() protoreflect.MessageDescriptor { + return md_QueryAccountRequest } // Type returns the message type, which encapsulates both Go and protobuf // type information. If the Go type information is not needed, // it is recommended that the message descriptor be used instead. -func (x *fastReflection_QueryCosmosAccountRequest) Type() protoreflect.MessageType { - return _fastReflection_QueryCosmosAccountRequest_messageType +func (x *fastReflection_QueryAccountRequest) Type() protoreflect.MessageType { + return _fastReflection_QueryAccountRequest_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_QueryCosmosAccountRequest) New() protoreflect.Message { - return new(fastReflection_QueryCosmosAccountRequest) +func (x *fastReflection_QueryAccountRequest) New() protoreflect.Message { + return new(fastReflection_QueryAccountRequest) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_QueryCosmosAccountRequest) Interface() protoreflect.ProtoMessage { - return (*QueryCosmosAccountRequest)(x) +func (x *fastReflection_QueryAccountRequest) Interface() protoreflect.ProtoMessage { + return (*QueryAccountRequest)(x) } // Range iterates over every populated field in an undefined order, @@ -1835,10 +1767,10 @@ func (x *fastReflection_QueryCosmosAccountRequest) Interface() protoreflect.Prot // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_QueryCosmosAccountRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { +func (x *fastReflection_QueryAccountRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { if x.Address != "" { value := protoreflect.ValueOfString(x.Address) - if !f(fd_QueryCosmosAccountRequest_address, value) { + if !f(fd_QueryAccountRequest_address, value) { return } } @@ -1855,15 +1787,15 @@ func (x *fastReflection_QueryCosmosAccountRequest) Range(f func(protoreflect.Fie // In other cases (aside from the nullable cases above), // a proto3 scalar field is populated if it contains a non-zero value, and // a repeated field is populated if it is non-empty. -func (x *fastReflection_QueryCosmosAccountRequest) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_QueryAccountRequest) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryCosmosAccountRequest.address": + case "cosmos.evm.vm.v1.QueryAccountRequest.address": return x.Address != "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountRequest does not contain field %s", fd.FullName())) } } @@ -1873,15 +1805,15 @@ func (x *fastReflection_QueryCosmosAccountRequest) Has(fd protoreflect.FieldDesc // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryCosmosAccountRequest) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_QueryAccountRequest) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryCosmosAccountRequest.address": + case "cosmos.evm.vm.v1.QueryAccountRequest.address": x.Address = "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountRequest does not contain field %s", fd.FullName())) } } @@ -1891,16 +1823,16 @@ func (x *fastReflection_QueryCosmosAccountRequest) Clear(fd protoreflect.FieldDe // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_QueryCosmosAccountRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryAccountRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "cosmos.evm.vm.v1.QueryCosmosAccountRequest.address": + case "cosmos.evm.vm.v1.QueryAccountRequest.address": value := x.Address return protoreflect.ValueOfString(value) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountRequest does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountRequest does not contain field %s", descriptor.FullName())) } } @@ -1914,15 +1846,15 @@ func (x *fastReflection_QueryCosmosAccountRequest) Get(descriptor protoreflect.F // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryCosmosAccountRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_QueryAccountRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryCosmosAccountRequest.address": + case "cosmos.evm.vm.v1.QueryAccountRequest.address": x.Address = value.Interface().(string) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountRequest does not contain field %s", fd.FullName())) } } @@ -1936,40 +1868,40 @@ func (x *fastReflection_QueryCosmosAccountRequest) Set(fd protoreflect.FieldDesc // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryCosmosAccountRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryAccountRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryCosmosAccountRequest.address": - panic(fmt.Errorf("field address of message cosmos.evm.vm.v1.QueryCosmosAccountRequest is not mutable")) + case "cosmos.evm.vm.v1.QueryAccountRequest.address": + panic(fmt.Errorf("field address of message cosmos.evm.vm.v1.QueryAccountRequest is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountRequest does not contain field %s", fd.FullName())) } } // NewField returns a new value that is assignable to the field // for the given descriptor. For scalars, this returns the default value. // For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_QueryCosmosAccountRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryAccountRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryCosmosAccountRequest.address": + case "cosmos.evm.vm.v1.QueryAccountRequest.address": return protoreflect.ValueOfString("") default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountRequest does not contain field %s", fd.FullName())) } } // WhichOneof reports which field within the oneof is populated, // returning nil if none are populated. // It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_QueryCosmosAccountRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_QueryAccountRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryCosmosAccountRequest", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryAccountRequest", d.FullName())) } panic("unreachable") } @@ -1977,7 +1909,7 @@ func (x *fastReflection_QueryCosmosAccountRequest) WhichOneof(d protoreflect.One // GetUnknown retrieves the entire list of unknown fields. // The caller may only mutate the contents of the RawFields // if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_QueryCosmosAccountRequest) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_QueryAccountRequest) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -1988,7 +1920,7 @@ func (x *fastReflection_QueryCosmosAccountRequest) GetUnknown() protoreflect.Raw // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryCosmosAccountRequest) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_QueryAccountRequest) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -2000,7 +1932,7 @@ func (x *fastReflection_QueryCosmosAccountRequest) SetUnknown(fields protoreflec // message type, but the details are implementation dependent. // Validity is not part of the protobuf data model, and may not // be preserved in marshaling or other operations. -func (x *fastReflection_QueryCosmosAccountRequest) IsValid() bool { +func (x *fastReflection_QueryAccountRequest) IsValid() bool { return x != nil } @@ -2010,9 +1942,9 @@ func (x *fastReflection_QueryCosmosAccountRequest) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_QueryCosmosAccountRequest) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_QueryAccountRequest) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*QueryCosmosAccountRequest) + x := input.Message.Interface().(*QueryAccountRequest) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -2038,7 +1970,7 @@ func (x *fastReflection_QueryCosmosAccountRequest) ProtoMethods() *protoiface.Me } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*QueryCosmosAccountRequest) + x := input.Message.Interface().(*QueryAccountRequest) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -2075,7 +2007,7 @@ func (x *fastReflection_QueryCosmosAccountRequest) ProtoMethods() *protoiface.Me }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*QueryCosmosAccountRequest) + x := input.Message.Interface().(*QueryAccountRequest) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -2107,10 +2039,10 @@ func (x *fastReflection_QueryCosmosAccountRequest) ProtoMethods() *protoiface.Me fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryCosmosAccountRequest: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryAccountRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryCosmosAccountRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryAccountRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -2181,29 +2113,29 @@ func (x *fastReflection_QueryCosmosAccountRequest) ProtoMethods() *protoiface.Me } var ( - md_QueryCosmosAccountResponse protoreflect.MessageDescriptor - fd_QueryCosmosAccountResponse_cosmos_address protoreflect.FieldDescriptor - fd_QueryCosmosAccountResponse_sequence protoreflect.FieldDescriptor - fd_QueryCosmosAccountResponse_account_number protoreflect.FieldDescriptor + md_QueryAccountResponse protoreflect.MessageDescriptor + fd_QueryAccountResponse_balance protoreflect.FieldDescriptor + fd_QueryAccountResponse_code_hash protoreflect.FieldDescriptor + fd_QueryAccountResponse_nonce protoreflect.FieldDescriptor ) func init() { file_cosmos_evm_vm_v1_query_proto_init() - md_QueryCosmosAccountResponse = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryCosmosAccountResponse") - fd_QueryCosmosAccountResponse_cosmos_address = md_QueryCosmosAccountResponse.Fields().ByName("cosmos_address") - fd_QueryCosmosAccountResponse_sequence = md_QueryCosmosAccountResponse.Fields().ByName("sequence") - fd_QueryCosmosAccountResponse_account_number = md_QueryCosmosAccountResponse.Fields().ByName("account_number") + md_QueryAccountResponse = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryAccountResponse") + fd_QueryAccountResponse_balance = md_QueryAccountResponse.Fields().ByName("balance") + fd_QueryAccountResponse_code_hash = md_QueryAccountResponse.Fields().ByName("code_hash") + fd_QueryAccountResponse_nonce = md_QueryAccountResponse.Fields().ByName("nonce") } -var _ protoreflect.Message = (*fastReflection_QueryCosmosAccountResponse)(nil) +var _ protoreflect.Message = (*fastReflection_QueryAccountResponse)(nil) -type fastReflection_QueryCosmosAccountResponse QueryCosmosAccountResponse +type fastReflection_QueryAccountResponse QueryAccountResponse -func (x *QueryCosmosAccountResponse) ProtoReflect() protoreflect.Message { - return (*fastReflection_QueryCosmosAccountResponse)(x) +func (x *QueryAccountResponse) ProtoReflect() protoreflect.Message { + return (*fastReflection_QueryAccountResponse)(x) } -func (x *QueryCosmosAccountResponse) slowProtoReflect() protoreflect.Message { +func (x *QueryAccountResponse) slowProtoReflect() protoreflect.Message { mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2215,43 +2147,43 @@ func (x *QueryCosmosAccountResponse) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_QueryCosmosAccountResponse_messageType fastReflection_QueryCosmosAccountResponse_messageType -var _ protoreflect.MessageType = fastReflection_QueryCosmosAccountResponse_messageType{} +var _fastReflection_QueryAccountResponse_messageType fastReflection_QueryAccountResponse_messageType +var _ protoreflect.MessageType = fastReflection_QueryAccountResponse_messageType{} -type fastReflection_QueryCosmosAccountResponse_messageType struct{} +type fastReflection_QueryAccountResponse_messageType struct{} -func (x fastReflection_QueryCosmosAccountResponse_messageType) Zero() protoreflect.Message { - return (*fastReflection_QueryCosmosAccountResponse)(nil) +func (x fastReflection_QueryAccountResponse_messageType) Zero() protoreflect.Message { + return (*fastReflection_QueryAccountResponse)(nil) } -func (x fastReflection_QueryCosmosAccountResponse_messageType) New() protoreflect.Message { - return new(fastReflection_QueryCosmosAccountResponse) +func (x fastReflection_QueryAccountResponse_messageType) New() protoreflect.Message { + return new(fastReflection_QueryAccountResponse) } -func (x fastReflection_QueryCosmosAccountResponse_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_QueryCosmosAccountResponse +func (x fastReflection_QueryAccountResponse_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_QueryAccountResponse } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_QueryCosmosAccountResponse) Descriptor() protoreflect.MessageDescriptor { - return md_QueryCosmosAccountResponse +func (x *fastReflection_QueryAccountResponse) Descriptor() protoreflect.MessageDescriptor { + return md_QueryAccountResponse } // Type returns the message type, which encapsulates both Go and protobuf // type information. If the Go type information is not needed, // it is recommended that the message descriptor be used instead. -func (x *fastReflection_QueryCosmosAccountResponse) Type() protoreflect.MessageType { - return _fastReflection_QueryCosmosAccountResponse_messageType +func (x *fastReflection_QueryAccountResponse) Type() protoreflect.MessageType { + return _fastReflection_QueryAccountResponse_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_QueryCosmosAccountResponse) New() protoreflect.Message { - return new(fastReflection_QueryCosmosAccountResponse) +func (x *fastReflection_QueryAccountResponse) New() protoreflect.Message { + return new(fastReflection_QueryAccountResponse) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_QueryCosmosAccountResponse) Interface() protoreflect.ProtoMessage { - return (*QueryCosmosAccountResponse)(x) +func (x *fastReflection_QueryAccountResponse) Interface() protoreflect.ProtoMessage { + return (*QueryAccountResponse)(x) } // Range iterates over every populated field in an undefined order, @@ -2259,22 +2191,22 @@ func (x *fastReflection_QueryCosmosAccountResponse) Interface() protoreflect.Pro // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_QueryCosmosAccountResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.CosmosAddress != "" { - value := protoreflect.ValueOfString(x.CosmosAddress) - if !f(fd_QueryCosmosAccountResponse_cosmos_address, value) { +func (x *fastReflection_QueryAccountResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Balance != "" { + value := protoreflect.ValueOfString(x.Balance) + if !f(fd_QueryAccountResponse_balance, value) { return } } - if x.Sequence != uint64(0) { - value := protoreflect.ValueOfUint64(x.Sequence) - if !f(fd_QueryCosmosAccountResponse_sequence, value) { + if x.CodeHash != "" { + value := protoreflect.ValueOfString(x.CodeHash) + if !f(fd_QueryAccountResponse_code_hash, value) { return } } - if x.AccountNumber != uint64(0) { - value := protoreflect.ValueOfUint64(x.AccountNumber) - if !f(fd_QueryCosmosAccountResponse_account_number, value) { + if x.Nonce != uint64(0) { + value := protoreflect.ValueOfUint64(x.Nonce) + if !f(fd_QueryAccountResponse_nonce, value) { return } } @@ -2291,19 +2223,19 @@ func (x *fastReflection_QueryCosmosAccountResponse) Range(f func(protoreflect.Fi // In other cases (aside from the nullable cases above), // a proto3 scalar field is populated if it contains a non-zero value, and // a repeated field is populated if it is non-empty. -func (x *fastReflection_QueryCosmosAccountResponse) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_QueryAccountResponse) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.cosmos_address": - return x.CosmosAddress != "" - case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.sequence": - return x.Sequence != uint64(0) - case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.account_number": - return x.AccountNumber != uint64(0) + case "cosmos.evm.vm.v1.QueryAccountResponse.balance": + return x.Balance != "" + case "cosmos.evm.vm.v1.QueryAccountResponse.code_hash": + return x.CodeHash != "" + case "cosmos.evm.vm.v1.QueryAccountResponse.nonce": + return x.Nonce != uint64(0) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountResponse does not contain field %s", fd.FullName())) } } @@ -2313,19 +2245,19 @@ func (x *fastReflection_QueryCosmosAccountResponse) Has(fd protoreflect.FieldDes // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryCosmosAccountResponse) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_QueryAccountResponse) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.cosmos_address": - x.CosmosAddress = "" - case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.sequence": - x.Sequence = uint64(0) - case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.account_number": - x.AccountNumber = uint64(0) + case "cosmos.evm.vm.v1.QueryAccountResponse.balance": + x.Balance = "" + case "cosmos.evm.vm.v1.QueryAccountResponse.code_hash": + x.CodeHash = "" + case "cosmos.evm.vm.v1.QueryAccountResponse.nonce": + x.Nonce = uint64(0) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountResponse does not contain field %s", fd.FullName())) } } @@ -2335,22 +2267,22 @@ func (x *fastReflection_QueryCosmosAccountResponse) Clear(fd protoreflect.FieldD // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_QueryCosmosAccountResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryAccountResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.cosmos_address": - value := x.CosmosAddress + case "cosmos.evm.vm.v1.QueryAccountResponse.balance": + value := x.Balance return protoreflect.ValueOfString(value) - case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.sequence": - value := x.Sequence - return protoreflect.ValueOfUint64(value) - case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.account_number": - value := x.AccountNumber - return protoreflect.ValueOfUint64(value) + case "cosmos.evm.vm.v1.QueryAccountResponse.code_hash": + value := x.CodeHash + return protoreflect.ValueOfString(value) + case "cosmos.evm.vm.v1.QueryAccountResponse.nonce": + value := x.Nonce + return protoreflect.ValueOfUint64(value) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountResponse does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountResponse does not contain field %s", descriptor.FullName())) } } @@ -2364,19 +2296,19 @@ func (x *fastReflection_QueryCosmosAccountResponse) Get(descriptor protoreflect. // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryCosmosAccountResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_QueryAccountResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.cosmos_address": - x.CosmosAddress = value.Interface().(string) - case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.sequence": - x.Sequence = value.Uint() - case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.account_number": - x.AccountNumber = value.Uint() + case "cosmos.evm.vm.v1.QueryAccountResponse.balance": + x.Balance = value.Interface().(string) + case "cosmos.evm.vm.v1.QueryAccountResponse.code_hash": + x.CodeHash = value.Interface().(string) + case "cosmos.evm.vm.v1.QueryAccountResponse.nonce": + x.Nonce = value.Uint() default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountResponse does not contain field %s", fd.FullName())) } } @@ -2390,48 +2322,48 @@ func (x *fastReflection_QueryCosmosAccountResponse) Set(fd protoreflect.FieldDes // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryCosmosAccountResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryAccountResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.cosmos_address": - panic(fmt.Errorf("field cosmos_address of message cosmos.evm.vm.v1.QueryCosmosAccountResponse is not mutable")) - case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.sequence": - panic(fmt.Errorf("field sequence of message cosmos.evm.vm.v1.QueryCosmosAccountResponse is not mutable")) - case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.account_number": - panic(fmt.Errorf("field account_number of message cosmos.evm.vm.v1.QueryCosmosAccountResponse is not mutable")) + case "cosmos.evm.vm.v1.QueryAccountResponse.balance": + panic(fmt.Errorf("field balance of message cosmos.evm.vm.v1.QueryAccountResponse is not mutable")) + case "cosmos.evm.vm.v1.QueryAccountResponse.code_hash": + panic(fmt.Errorf("field code_hash of message cosmos.evm.vm.v1.QueryAccountResponse is not mutable")) + case "cosmos.evm.vm.v1.QueryAccountResponse.nonce": + panic(fmt.Errorf("field nonce of message cosmos.evm.vm.v1.QueryAccountResponse is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountResponse does not contain field %s", fd.FullName())) } } // NewField returns a new value that is assignable to the field // for the given descriptor. For scalars, this returns the default value. // For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_QueryCosmosAccountResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryAccountResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.cosmos_address": + case "cosmos.evm.vm.v1.QueryAccountResponse.balance": return protoreflect.ValueOfString("") - case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.sequence": - return protoreflect.ValueOfUint64(uint64(0)) - case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.account_number": + case "cosmos.evm.vm.v1.QueryAccountResponse.code_hash": + return protoreflect.ValueOfString("") + case "cosmos.evm.vm.v1.QueryAccountResponse.nonce": return protoreflect.ValueOfUint64(uint64(0)) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryAccountResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryAccountResponse does not contain field %s", fd.FullName())) } } // WhichOneof reports which field within the oneof is populated, // returning nil if none are populated. // It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_QueryCosmosAccountResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_QueryAccountResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryCosmosAccountResponse", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryAccountResponse", d.FullName())) } panic("unreachable") } @@ -2439,7 +2371,7 @@ func (x *fastReflection_QueryCosmosAccountResponse) WhichOneof(d protoreflect.On // GetUnknown retrieves the entire list of unknown fields. // The caller may only mutate the contents of the RawFields // if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_QueryCosmosAccountResponse) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_QueryAccountResponse) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -2450,7 +2382,7 @@ func (x *fastReflection_QueryCosmosAccountResponse) GetUnknown() protoreflect.Ra // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryCosmosAccountResponse) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_QueryAccountResponse) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -2462,7 +2394,7 @@ func (x *fastReflection_QueryCosmosAccountResponse) SetUnknown(fields protorefle // message type, but the details are implementation dependent. // Validity is not part of the protobuf data model, and may not // be preserved in marshaling or other operations. -func (x *fastReflection_QueryCosmosAccountResponse) IsValid() bool { +func (x *fastReflection_QueryAccountResponse) IsValid() bool { return x != nil } @@ -2472,9 +2404,9 @@ func (x *fastReflection_QueryCosmosAccountResponse) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_QueryCosmosAccountResponse) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_QueryAccountResponse) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*QueryCosmosAccountResponse) + x := input.Message.Interface().(*QueryAccountResponse) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -2486,15 +2418,16 @@ func (x *fastReflection_QueryCosmosAccountResponse) ProtoMethods() *protoiface.M var n int var l int _ = l - l = len(x.CosmosAddress) + l = len(x.Balance) if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } - if x.Sequence != 0 { - n += 1 + runtime.Sov(uint64(x.Sequence)) + l = len(x.CodeHash) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) } - if x.AccountNumber != 0 { - n += 1 + runtime.Sov(uint64(x.AccountNumber)) + if x.Nonce != 0 { + n += 1 + runtime.Sov(uint64(x.Nonce)) } if x.unknownFields != nil { n += len(x.unknownFields) @@ -2506,7 +2439,7 @@ func (x *fastReflection_QueryCosmosAccountResponse) ProtoMethods() *protoiface.M } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*QueryCosmosAccountResponse) + x := input.Message.Interface().(*QueryAccountResponse) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -2525,20 +2458,22 @@ func (x *fastReflection_QueryCosmosAccountResponse) ProtoMethods() *protoiface.M i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } - if x.AccountNumber != 0 { - i = runtime.EncodeVarint(dAtA, i, uint64(x.AccountNumber)) + if x.Nonce != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.Nonce)) i-- dAtA[i] = 0x18 } - if x.Sequence != 0 { - i = runtime.EncodeVarint(dAtA, i, uint64(x.Sequence)) + if len(x.CodeHash) > 0 { + i -= len(x.CodeHash) + copy(dAtA[i:], x.CodeHash) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.CodeHash))) i-- - dAtA[i] = 0x10 + dAtA[i] = 0x12 } - if len(x.CosmosAddress) > 0 { - i -= len(x.CosmosAddress) - copy(dAtA[i:], x.CosmosAddress) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.CosmosAddress))) + if len(x.Balance) > 0 { + i -= len(x.Balance) + copy(dAtA[i:], x.Balance) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Balance))) i-- dAtA[i] = 0xa } @@ -2553,7 +2488,7 @@ func (x *fastReflection_QueryCosmosAccountResponse) ProtoMethods() *protoiface.M }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*QueryCosmosAccountResponse) + x := input.Message.Interface().(*QueryAccountResponse) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -2585,15 +2520,15 @@ func (x *fastReflection_QueryCosmosAccountResponse) ProtoMethods() *protoiface.M fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryCosmosAccountResponse: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryAccountResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryCosmosAccountResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryAccountResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field CosmosAddress", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Balance", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -2621,13 +2556,13 @@ func (x *fastReflection_QueryCosmosAccountResponse) ProtoMethods() *protoiface.M if postIndex > l { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF } - x.CosmosAddress = string(dAtA[iNdEx:postIndex]) + x.Balance = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: - if wireType != 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Sequence", wireType) + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field CodeHash", wireType) } - x.Sequence = 0 + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow @@ -2637,16 +2572,29 @@ func (x *fastReflection_QueryCosmosAccountResponse) ProtoMethods() *protoiface.M } b := dAtA[iNdEx] iNdEx++ - x.Sequence |= uint64(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.CodeHash = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex case 3: if wireType != 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field AccountNumber", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Nonce", wireType) } - x.AccountNumber = 0 + x.Nonce = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow @@ -2656,7 +2604,7 @@ func (x *fastReflection_QueryCosmosAccountResponse) ProtoMethods() *protoiface.M } b := dAtA[iNdEx] iNdEx++ - x.AccountNumber |= uint64(b&0x7F) << shift + x.Nonce |= uint64(b&0x7F) << shift if b < 0x80 { break } @@ -2697,25 +2645,25 @@ func (x *fastReflection_QueryCosmosAccountResponse) ProtoMethods() *protoiface.M } var ( - md_QueryValidatorAccountRequest protoreflect.MessageDescriptor - fd_QueryValidatorAccountRequest_cons_address protoreflect.FieldDescriptor + md_QueryCosmosAccountRequest protoreflect.MessageDescriptor + fd_QueryCosmosAccountRequest_address protoreflect.FieldDescriptor ) func init() { file_cosmos_evm_vm_v1_query_proto_init() - md_QueryValidatorAccountRequest = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryValidatorAccountRequest") - fd_QueryValidatorAccountRequest_cons_address = md_QueryValidatorAccountRequest.Fields().ByName("cons_address") + md_QueryCosmosAccountRequest = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryCosmosAccountRequest") + fd_QueryCosmosAccountRequest_address = md_QueryCosmosAccountRequest.Fields().ByName("address") } -var _ protoreflect.Message = (*fastReflection_QueryValidatorAccountRequest)(nil) +var _ protoreflect.Message = (*fastReflection_QueryCosmosAccountRequest)(nil) -type fastReflection_QueryValidatorAccountRequest QueryValidatorAccountRequest +type fastReflection_QueryCosmosAccountRequest QueryCosmosAccountRequest -func (x *QueryValidatorAccountRequest) ProtoReflect() protoreflect.Message { - return (*fastReflection_QueryValidatorAccountRequest)(x) +func (x *QueryCosmosAccountRequest) ProtoReflect() protoreflect.Message { + return (*fastReflection_QueryCosmosAccountRequest)(x) } -func (x *QueryValidatorAccountRequest) slowProtoReflect() protoreflect.Message { +func (x *QueryCosmosAccountRequest) slowProtoReflect() protoreflect.Message { mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2727,43 +2675,43 @@ func (x *QueryValidatorAccountRequest) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_QueryValidatorAccountRequest_messageType fastReflection_QueryValidatorAccountRequest_messageType -var _ protoreflect.MessageType = fastReflection_QueryValidatorAccountRequest_messageType{} +var _fastReflection_QueryCosmosAccountRequest_messageType fastReflection_QueryCosmosAccountRequest_messageType +var _ protoreflect.MessageType = fastReflection_QueryCosmosAccountRequest_messageType{} -type fastReflection_QueryValidatorAccountRequest_messageType struct{} +type fastReflection_QueryCosmosAccountRequest_messageType struct{} -func (x fastReflection_QueryValidatorAccountRequest_messageType) Zero() protoreflect.Message { - return (*fastReflection_QueryValidatorAccountRequest)(nil) +func (x fastReflection_QueryCosmosAccountRequest_messageType) Zero() protoreflect.Message { + return (*fastReflection_QueryCosmosAccountRequest)(nil) } -func (x fastReflection_QueryValidatorAccountRequest_messageType) New() protoreflect.Message { - return new(fastReflection_QueryValidatorAccountRequest) +func (x fastReflection_QueryCosmosAccountRequest_messageType) New() protoreflect.Message { + return new(fastReflection_QueryCosmosAccountRequest) } -func (x fastReflection_QueryValidatorAccountRequest_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_QueryValidatorAccountRequest +func (x fastReflection_QueryCosmosAccountRequest_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_QueryCosmosAccountRequest } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_QueryValidatorAccountRequest) Descriptor() protoreflect.MessageDescriptor { - return md_QueryValidatorAccountRequest +func (x *fastReflection_QueryCosmosAccountRequest) Descriptor() protoreflect.MessageDescriptor { + return md_QueryCosmosAccountRequest } // Type returns the message type, which encapsulates both Go and protobuf // type information. If the Go type information is not needed, // it is recommended that the message descriptor be used instead. -func (x *fastReflection_QueryValidatorAccountRequest) Type() protoreflect.MessageType { - return _fastReflection_QueryValidatorAccountRequest_messageType +func (x *fastReflection_QueryCosmosAccountRequest) Type() protoreflect.MessageType { + return _fastReflection_QueryCosmosAccountRequest_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_QueryValidatorAccountRequest) New() protoreflect.Message { - return new(fastReflection_QueryValidatorAccountRequest) +func (x *fastReflection_QueryCosmosAccountRequest) New() protoreflect.Message { + return new(fastReflection_QueryCosmosAccountRequest) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_QueryValidatorAccountRequest) Interface() protoreflect.ProtoMessage { - return (*QueryValidatorAccountRequest)(x) +func (x *fastReflection_QueryCosmosAccountRequest) Interface() protoreflect.ProtoMessage { + return (*QueryCosmosAccountRequest)(x) } // Range iterates over every populated field in an undefined order, @@ -2771,10 +2719,10 @@ func (x *fastReflection_QueryValidatorAccountRequest) Interface() protoreflect.P // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_QueryValidatorAccountRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.ConsAddress != "" { - value := protoreflect.ValueOfString(x.ConsAddress) - if !f(fd_QueryValidatorAccountRequest_cons_address, value) { +func (x *fastReflection_QueryCosmosAccountRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Address != "" { + value := protoreflect.ValueOfString(x.Address) + if !f(fd_QueryCosmosAccountRequest_address, value) { return } } @@ -2791,15 +2739,15 @@ func (x *fastReflection_QueryValidatorAccountRequest) Range(f func(protoreflect. // In other cases (aside from the nullable cases above), // a proto3 scalar field is populated if it contains a non-zero value, and // a repeated field is populated if it is non-empty. -func (x *fastReflection_QueryValidatorAccountRequest) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_QueryCosmosAccountRequest) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryValidatorAccountRequest.cons_address": - return x.ConsAddress != "" + case "cosmos.evm.vm.v1.QueryCosmosAccountRequest.address": + return x.Address != "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountRequest does not contain field %s", fd.FullName())) } } @@ -2809,15 +2757,15 @@ func (x *fastReflection_QueryValidatorAccountRequest) Has(fd protoreflect.FieldD // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryValidatorAccountRequest) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_QueryCosmosAccountRequest) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryValidatorAccountRequest.cons_address": - x.ConsAddress = "" + case "cosmos.evm.vm.v1.QueryCosmosAccountRequest.address": + x.Address = "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountRequest does not contain field %s", fd.FullName())) } } @@ -2827,16 +2775,16 @@ func (x *fastReflection_QueryValidatorAccountRequest) Clear(fd protoreflect.Fiel // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_QueryValidatorAccountRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryCosmosAccountRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "cosmos.evm.vm.v1.QueryValidatorAccountRequest.cons_address": - value := x.ConsAddress + case "cosmos.evm.vm.v1.QueryCosmosAccountRequest.address": + value := x.Address return protoreflect.ValueOfString(value) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountRequest does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountRequest does not contain field %s", descriptor.FullName())) } } @@ -2850,15 +2798,15 @@ func (x *fastReflection_QueryValidatorAccountRequest) Get(descriptor protoreflec // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryValidatorAccountRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_QueryCosmosAccountRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryValidatorAccountRequest.cons_address": - x.ConsAddress = value.Interface().(string) + case "cosmos.evm.vm.v1.QueryCosmosAccountRequest.address": + x.Address = value.Interface().(string) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountRequest does not contain field %s", fd.FullName())) } } @@ -2872,40 +2820,40 @@ func (x *fastReflection_QueryValidatorAccountRequest) Set(fd protoreflect.FieldD // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryValidatorAccountRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryCosmosAccountRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryValidatorAccountRequest.cons_address": - panic(fmt.Errorf("field cons_address of message cosmos.evm.vm.v1.QueryValidatorAccountRequest is not mutable")) + case "cosmos.evm.vm.v1.QueryCosmosAccountRequest.address": + panic(fmt.Errorf("field address of message cosmos.evm.vm.v1.QueryCosmosAccountRequest is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountRequest does not contain field %s", fd.FullName())) } } // NewField returns a new value that is assignable to the field // for the given descriptor. For scalars, this returns the default value. // For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_QueryValidatorAccountRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryCosmosAccountRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryValidatorAccountRequest.cons_address": + case "cosmos.evm.vm.v1.QueryCosmosAccountRequest.address": return protoreflect.ValueOfString("") default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountRequest does not contain field %s", fd.FullName())) } } // WhichOneof reports which field within the oneof is populated, // returning nil if none are populated. // It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_QueryValidatorAccountRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_QueryCosmosAccountRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryValidatorAccountRequest", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryCosmosAccountRequest", d.FullName())) } panic("unreachable") } @@ -2913,7 +2861,7 @@ func (x *fastReflection_QueryValidatorAccountRequest) WhichOneof(d protoreflect. // GetUnknown retrieves the entire list of unknown fields. // The caller may only mutate the contents of the RawFields // if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_QueryValidatorAccountRequest) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_QueryCosmosAccountRequest) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -2924,7 +2872,7 @@ func (x *fastReflection_QueryValidatorAccountRequest) GetUnknown() protoreflect. // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryValidatorAccountRequest) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_QueryCosmosAccountRequest) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -2936,7 +2884,7 @@ func (x *fastReflection_QueryValidatorAccountRequest) SetUnknown(fields protoref // message type, but the details are implementation dependent. // Validity is not part of the protobuf data model, and may not // be preserved in marshaling or other operations. -func (x *fastReflection_QueryValidatorAccountRequest) IsValid() bool { +func (x *fastReflection_QueryCosmosAccountRequest) IsValid() bool { return x != nil } @@ -2946,9 +2894,9 @@ func (x *fastReflection_QueryValidatorAccountRequest) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_QueryValidatorAccountRequest) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_QueryCosmosAccountRequest) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*QueryValidatorAccountRequest) + x := input.Message.Interface().(*QueryCosmosAccountRequest) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -2960,7 +2908,7 @@ func (x *fastReflection_QueryValidatorAccountRequest) ProtoMethods() *protoiface var n int var l int _ = l - l = len(x.ConsAddress) + l = len(x.Address) if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } @@ -2974,7 +2922,7 @@ func (x *fastReflection_QueryValidatorAccountRequest) ProtoMethods() *protoiface } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*QueryValidatorAccountRequest) + x := input.Message.Interface().(*QueryCosmosAccountRequest) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -2993,10 +2941,10 @@ func (x *fastReflection_QueryValidatorAccountRequest) ProtoMethods() *protoiface i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } - if len(x.ConsAddress) > 0 { - i -= len(x.ConsAddress) - copy(dAtA[i:], x.ConsAddress) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ConsAddress))) + if len(x.Address) > 0 { + i -= len(x.Address) + copy(dAtA[i:], x.Address) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Address))) i-- dAtA[i] = 0xa } @@ -3011,7 +2959,7 @@ func (x *fastReflection_QueryValidatorAccountRequest) ProtoMethods() *protoiface }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*QueryValidatorAccountRequest) + x := input.Message.Interface().(*QueryCosmosAccountRequest) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -3043,15 +2991,15 @@ func (x *fastReflection_QueryValidatorAccountRequest) ProtoMethods() *protoiface fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryValidatorAccountRequest: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryCosmosAccountRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryValidatorAccountRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryCosmosAccountRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ConsAddress", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -3079,7 +3027,7 @@ func (x *fastReflection_QueryValidatorAccountRequest) ProtoMethods() *protoiface if postIndex > l { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF } - x.ConsAddress = string(dAtA[iNdEx:postIndex]) + x.Address = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -3117,29 +3065,29 @@ func (x *fastReflection_QueryValidatorAccountRequest) ProtoMethods() *protoiface } var ( - md_QueryValidatorAccountResponse protoreflect.MessageDescriptor - fd_QueryValidatorAccountResponse_account_address protoreflect.FieldDescriptor - fd_QueryValidatorAccountResponse_sequence protoreflect.FieldDescriptor - fd_QueryValidatorAccountResponse_account_number protoreflect.FieldDescriptor + md_QueryCosmosAccountResponse protoreflect.MessageDescriptor + fd_QueryCosmosAccountResponse_cosmos_address protoreflect.FieldDescriptor + fd_QueryCosmosAccountResponse_sequence protoreflect.FieldDescriptor + fd_QueryCosmosAccountResponse_account_number protoreflect.FieldDescriptor ) func init() { file_cosmos_evm_vm_v1_query_proto_init() - md_QueryValidatorAccountResponse = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryValidatorAccountResponse") - fd_QueryValidatorAccountResponse_account_address = md_QueryValidatorAccountResponse.Fields().ByName("account_address") - fd_QueryValidatorAccountResponse_sequence = md_QueryValidatorAccountResponse.Fields().ByName("sequence") - fd_QueryValidatorAccountResponse_account_number = md_QueryValidatorAccountResponse.Fields().ByName("account_number") + md_QueryCosmosAccountResponse = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryCosmosAccountResponse") + fd_QueryCosmosAccountResponse_cosmos_address = md_QueryCosmosAccountResponse.Fields().ByName("cosmos_address") + fd_QueryCosmosAccountResponse_sequence = md_QueryCosmosAccountResponse.Fields().ByName("sequence") + fd_QueryCosmosAccountResponse_account_number = md_QueryCosmosAccountResponse.Fields().ByName("account_number") } -var _ protoreflect.Message = (*fastReflection_QueryValidatorAccountResponse)(nil) +var _ protoreflect.Message = (*fastReflection_QueryCosmosAccountResponse)(nil) -type fastReflection_QueryValidatorAccountResponse QueryValidatorAccountResponse +type fastReflection_QueryCosmosAccountResponse QueryCosmosAccountResponse -func (x *QueryValidatorAccountResponse) ProtoReflect() protoreflect.Message { - return (*fastReflection_QueryValidatorAccountResponse)(x) +func (x *QueryCosmosAccountResponse) ProtoReflect() protoreflect.Message { + return (*fastReflection_QueryCosmosAccountResponse)(x) } -func (x *QueryValidatorAccountResponse) slowProtoReflect() protoreflect.Message { +func (x *QueryCosmosAccountResponse) slowProtoReflect() protoreflect.Message { mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3151,43 +3099,43 @@ func (x *QueryValidatorAccountResponse) slowProtoReflect() protoreflect.Message return mi.MessageOf(x) } -var _fastReflection_QueryValidatorAccountResponse_messageType fastReflection_QueryValidatorAccountResponse_messageType -var _ protoreflect.MessageType = fastReflection_QueryValidatorAccountResponse_messageType{} +var _fastReflection_QueryCosmosAccountResponse_messageType fastReflection_QueryCosmosAccountResponse_messageType +var _ protoreflect.MessageType = fastReflection_QueryCosmosAccountResponse_messageType{} -type fastReflection_QueryValidatorAccountResponse_messageType struct{} +type fastReflection_QueryCosmosAccountResponse_messageType struct{} -func (x fastReflection_QueryValidatorAccountResponse_messageType) Zero() protoreflect.Message { - return (*fastReflection_QueryValidatorAccountResponse)(nil) +func (x fastReflection_QueryCosmosAccountResponse_messageType) Zero() protoreflect.Message { + return (*fastReflection_QueryCosmosAccountResponse)(nil) } -func (x fastReflection_QueryValidatorAccountResponse_messageType) New() protoreflect.Message { - return new(fastReflection_QueryValidatorAccountResponse) +func (x fastReflection_QueryCosmosAccountResponse_messageType) New() protoreflect.Message { + return new(fastReflection_QueryCosmosAccountResponse) } -func (x fastReflection_QueryValidatorAccountResponse_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_QueryValidatorAccountResponse +func (x fastReflection_QueryCosmosAccountResponse_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_QueryCosmosAccountResponse } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_QueryValidatorAccountResponse) Descriptor() protoreflect.MessageDescriptor { - return md_QueryValidatorAccountResponse +func (x *fastReflection_QueryCosmosAccountResponse) Descriptor() protoreflect.MessageDescriptor { + return md_QueryCosmosAccountResponse } // Type returns the message type, which encapsulates both Go and protobuf // type information. If the Go type information is not needed, // it is recommended that the message descriptor be used instead. -func (x *fastReflection_QueryValidatorAccountResponse) Type() protoreflect.MessageType { - return _fastReflection_QueryValidatorAccountResponse_messageType +func (x *fastReflection_QueryCosmosAccountResponse) Type() protoreflect.MessageType { + return _fastReflection_QueryCosmosAccountResponse_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_QueryValidatorAccountResponse) New() protoreflect.Message { - return new(fastReflection_QueryValidatorAccountResponse) +func (x *fastReflection_QueryCosmosAccountResponse) New() protoreflect.Message { + return new(fastReflection_QueryCosmosAccountResponse) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_QueryValidatorAccountResponse) Interface() protoreflect.ProtoMessage { - return (*QueryValidatorAccountResponse)(x) +func (x *fastReflection_QueryCosmosAccountResponse) Interface() protoreflect.ProtoMessage { + return (*QueryCosmosAccountResponse)(x) } // Range iterates over every populated field in an undefined order, @@ -3195,22 +3143,22 @@ func (x *fastReflection_QueryValidatorAccountResponse) Interface() protoreflect. // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_QueryValidatorAccountResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.AccountAddress != "" { - value := protoreflect.ValueOfString(x.AccountAddress) - if !f(fd_QueryValidatorAccountResponse_account_address, value) { +func (x *fastReflection_QueryCosmosAccountResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.CosmosAddress != "" { + value := protoreflect.ValueOfString(x.CosmosAddress) + if !f(fd_QueryCosmosAccountResponse_cosmos_address, value) { return } } if x.Sequence != uint64(0) { value := protoreflect.ValueOfUint64(x.Sequence) - if !f(fd_QueryValidatorAccountResponse_sequence, value) { + if !f(fd_QueryCosmosAccountResponse_sequence, value) { return } } if x.AccountNumber != uint64(0) { value := protoreflect.ValueOfUint64(x.AccountNumber) - if !f(fd_QueryValidatorAccountResponse_account_number, value) { + if !f(fd_QueryCosmosAccountResponse_account_number, value) { return } } @@ -3227,19 +3175,19 @@ func (x *fastReflection_QueryValidatorAccountResponse) Range(f func(protoreflect // In other cases (aside from the nullable cases above), // a proto3 scalar field is populated if it contains a non-zero value, and // a repeated field is populated if it is non-empty. -func (x *fastReflection_QueryValidatorAccountResponse) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_QueryCosmosAccountResponse) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_address": - return x.AccountAddress != "" - case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.sequence": + case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.cosmos_address": + return x.CosmosAddress != "" + case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.sequence": return x.Sequence != uint64(0) - case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_number": + case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.account_number": return x.AccountNumber != uint64(0) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountResponse does not contain field %s", fd.FullName())) } } @@ -3249,19 +3197,19 @@ func (x *fastReflection_QueryValidatorAccountResponse) Has(fd protoreflect.Field // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryValidatorAccountResponse) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_QueryCosmosAccountResponse) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_address": - x.AccountAddress = "" - case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.sequence": + case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.cosmos_address": + x.CosmosAddress = "" + case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.sequence": x.Sequence = uint64(0) - case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_number": + case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.account_number": x.AccountNumber = uint64(0) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountResponse does not contain field %s", fd.FullName())) } } @@ -3271,22 +3219,22 @@ func (x *fastReflection_QueryValidatorAccountResponse) Clear(fd protoreflect.Fie // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_QueryValidatorAccountResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryCosmosAccountResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_address": - value := x.AccountAddress + case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.cosmos_address": + value := x.CosmosAddress return protoreflect.ValueOfString(value) - case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.sequence": + case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.sequence": value := x.Sequence return protoreflect.ValueOfUint64(value) - case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_number": + case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.account_number": value := x.AccountNumber return protoreflect.ValueOfUint64(value) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountResponse does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountResponse does not contain field %s", descriptor.FullName())) } } @@ -3300,19 +3248,19 @@ func (x *fastReflection_QueryValidatorAccountResponse) Get(descriptor protorefle // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryValidatorAccountResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_QueryCosmosAccountResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_address": - x.AccountAddress = value.Interface().(string) - case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.sequence": + case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.cosmos_address": + x.CosmosAddress = value.Interface().(string) + case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.sequence": x.Sequence = value.Uint() - case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_number": + case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.account_number": x.AccountNumber = value.Uint() default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountResponse does not contain field %s", fd.FullName())) } } @@ -3326,48 +3274,48 @@ func (x *fastReflection_QueryValidatorAccountResponse) Set(fd protoreflect.Field // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryValidatorAccountResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryCosmosAccountResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_address": - panic(fmt.Errorf("field account_address of message cosmos.evm.vm.v1.QueryValidatorAccountResponse is not mutable")) - case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.sequence": - panic(fmt.Errorf("field sequence of message cosmos.evm.vm.v1.QueryValidatorAccountResponse is not mutable")) - case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_number": - panic(fmt.Errorf("field account_number of message cosmos.evm.vm.v1.QueryValidatorAccountResponse is not mutable")) + case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.cosmos_address": + panic(fmt.Errorf("field cosmos_address of message cosmos.evm.vm.v1.QueryCosmosAccountResponse is not mutable")) + case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.sequence": + panic(fmt.Errorf("field sequence of message cosmos.evm.vm.v1.QueryCosmosAccountResponse is not mutable")) + case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.account_number": + panic(fmt.Errorf("field account_number of message cosmos.evm.vm.v1.QueryCosmosAccountResponse is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountResponse does not contain field %s", fd.FullName())) } } // NewField returns a new value that is assignable to the field // for the given descriptor. For scalars, this returns the default value. // For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_QueryValidatorAccountResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryCosmosAccountResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_address": + case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.cosmos_address": return protoreflect.ValueOfString("") - case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.sequence": + case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.sequence": return protoreflect.ValueOfUint64(uint64(0)) - case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_number": + case "cosmos.evm.vm.v1.QueryCosmosAccountResponse.account_number": return protoreflect.ValueOfUint64(uint64(0)) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCosmosAccountResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCosmosAccountResponse does not contain field %s", fd.FullName())) } } // WhichOneof reports which field within the oneof is populated, // returning nil if none are populated. // It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_QueryValidatorAccountResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_QueryCosmosAccountResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryValidatorAccountResponse", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryCosmosAccountResponse", d.FullName())) } panic("unreachable") } @@ -3375,7 +3323,7 @@ func (x *fastReflection_QueryValidatorAccountResponse) WhichOneof(d protoreflect // GetUnknown retrieves the entire list of unknown fields. // The caller may only mutate the contents of the RawFields // if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_QueryValidatorAccountResponse) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_QueryCosmosAccountResponse) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -3386,7 +3334,7 @@ func (x *fastReflection_QueryValidatorAccountResponse) GetUnknown() protoreflect // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryValidatorAccountResponse) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_QueryCosmosAccountResponse) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -3398,7 +3346,7 @@ func (x *fastReflection_QueryValidatorAccountResponse) SetUnknown(fields protore // message type, but the details are implementation dependent. // Validity is not part of the protobuf data model, and may not // be preserved in marshaling or other operations. -func (x *fastReflection_QueryValidatorAccountResponse) IsValid() bool { +func (x *fastReflection_QueryCosmosAccountResponse) IsValid() bool { return x != nil } @@ -3408,9 +3356,9 @@ func (x *fastReflection_QueryValidatorAccountResponse) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_QueryValidatorAccountResponse) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_QueryCosmosAccountResponse) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*QueryValidatorAccountResponse) + x := input.Message.Interface().(*QueryCosmosAccountResponse) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -3422,7 +3370,7 @@ func (x *fastReflection_QueryValidatorAccountResponse) ProtoMethods() *protoifac var n int var l int _ = l - l = len(x.AccountAddress) + l = len(x.CosmosAddress) if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } @@ -3442,7 +3390,7 @@ func (x *fastReflection_QueryValidatorAccountResponse) ProtoMethods() *protoifac } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*QueryValidatorAccountResponse) + x := input.Message.Interface().(*QueryCosmosAccountResponse) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -3471,10 +3419,10 @@ func (x *fastReflection_QueryValidatorAccountResponse) ProtoMethods() *protoifac i-- dAtA[i] = 0x10 } - if len(x.AccountAddress) > 0 { - i -= len(x.AccountAddress) - copy(dAtA[i:], x.AccountAddress) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.AccountAddress))) + if len(x.CosmosAddress) > 0 { + i -= len(x.CosmosAddress) + copy(dAtA[i:], x.CosmosAddress) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.CosmosAddress))) i-- dAtA[i] = 0xa } @@ -3489,7 +3437,7 @@ func (x *fastReflection_QueryValidatorAccountResponse) ProtoMethods() *protoifac }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*QueryValidatorAccountResponse) + x := input.Message.Interface().(*QueryCosmosAccountResponse) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -3521,15 +3469,15 @@ func (x *fastReflection_QueryValidatorAccountResponse) ProtoMethods() *protoifac fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryValidatorAccountResponse: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryCosmosAccountResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryValidatorAccountResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryCosmosAccountResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field AccountAddress", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field CosmosAddress", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -3557,7 +3505,7 @@ func (x *fastReflection_QueryValidatorAccountResponse) ProtoMethods() *protoifac if postIndex > l { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF } - x.AccountAddress = string(dAtA[iNdEx:postIndex]) + x.CosmosAddress = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 0 { @@ -3633,25 +3581,25 @@ func (x *fastReflection_QueryValidatorAccountResponse) ProtoMethods() *protoifac } var ( - md_QueryBalanceRequest protoreflect.MessageDescriptor - fd_QueryBalanceRequest_address protoreflect.FieldDescriptor + md_QueryValidatorAccountRequest protoreflect.MessageDescriptor + fd_QueryValidatorAccountRequest_cons_address protoreflect.FieldDescriptor ) func init() { file_cosmos_evm_vm_v1_query_proto_init() - md_QueryBalanceRequest = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryBalanceRequest") - fd_QueryBalanceRequest_address = md_QueryBalanceRequest.Fields().ByName("address") + md_QueryValidatorAccountRequest = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryValidatorAccountRequest") + fd_QueryValidatorAccountRequest_cons_address = md_QueryValidatorAccountRequest.Fields().ByName("cons_address") } -var _ protoreflect.Message = (*fastReflection_QueryBalanceRequest)(nil) +var _ protoreflect.Message = (*fastReflection_QueryValidatorAccountRequest)(nil) -type fastReflection_QueryBalanceRequest QueryBalanceRequest +type fastReflection_QueryValidatorAccountRequest QueryValidatorAccountRequest -func (x *QueryBalanceRequest) ProtoReflect() protoreflect.Message { - return (*fastReflection_QueryBalanceRequest)(x) +func (x *QueryValidatorAccountRequest) ProtoReflect() protoreflect.Message { + return (*fastReflection_QueryValidatorAccountRequest)(x) } -func (x *QueryBalanceRequest) slowProtoReflect() protoreflect.Message { +func (x *QueryValidatorAccountRequest) slowProtoReflect() protoreflect.Message { mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3663,43 +3611,43 @@ func (x *QueryBalanceRequest) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_QueryBalanceRequest_messageType fastReflection_QueryBalanceRequest_messageType -var _ protoreflect.MessageType = fastReflection_QueryBalanceRequest_messageType{} +var _fastReflection_QueryValidatorAccountRequest_messageType fastReflection_QueryValidatorAccountRequest_messageType +var _ protoreflect.MessageType = fastReflection_QueryValidatorAccountRequest_messageType{} -type fastReflection_QueryBalanceRequest_messageType struct{} +type fastReflection_QueryValidatorAccountRequest_messageType struct{} -func (x fastReflection_QueryBalanceRequest_messageType) Zero() protoreflect.Message { - return (*fastReflection_QueryBalanceRequest)(nil) +func (x fastReflection_QueryValidatorAccountRequest_messageType) Zero() protoreflect.Message { + return (*fastReflection_QueryValidatorAccountRequest)(nil) } -func (x fastReflection_QueryBalanceRequest_messageType) New() protoreflect.Message { - return new(fastReflection_QueryBalanceRequest) +func (x fastReflection_QueryValidatorAccountRequest_messageType) New() protoreflect.Message { + return new(fastReflection_QueryValidatorAccountRequest) } -func (x fastReflection_QueryBalanceRequest_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_QueryBalanceRequest +func (x fastReflection_QueryValidatorAccountRequest_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_QueryValidatorAccountRequest } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_QueryBalanceRequest) Descriptor() protoreflect.MessageDescriptor { - return md_QueryBalanceRequest +func (x *fastReflection_QueryValidatorAccountRequest) Descriptor() protoreflect.MessageDescriptor { + return md_QueryValidatorAccountRequest } // Type returns the message type, which encapsulates both Go and protobuf // type information. If the Go type information is not needed, // it is recommended that the message descriptor be used instead. -func (x *fastReflection_QueryBalanceRequest) Type() protoreflect.MessageType { - return _fastReflection_QueryBalanceRequest_messageType +func (x *fastReflection_QueryValidatorAccountRequest) Type() protoreflect.MessageType { + return _fastReflection_QueryValidatorAccountRequest_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_QueryBalanceRequest) New() protoreflect.Message { - return new(fastReflection_QueryBalanceRequest) +func (x *fastReflection_QueryValidatorAccountRequest) New() protoreflect.Message { + return new(fastReflection_QueryValidatorAccountRequest) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_QueryBalanceRequest) Interface() protoreflect.ProtoMessage { - return (*QueryBalanceRequest)(x) +func (x *fastReflection_QueryValidatorAccountRequest) Interface() protoreflect.ProtoMessage { + return (*QueryValidatorAccountRequest)(x) } // Range iterates over every populated field in an undefined order, @@ -3707,10 +3655,10 @@ func (x *fastReflection_QueryBalanceRequest) Interface() protoreflect.ProtoMessa // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_QueryBalanceRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.Address != "" { - value := protoreflect.ValueOfString(x.Address) - if !f(fd_QueryBalanceRequest_address, value) { +func (x *fastReflection_QueryValidatorAccountRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.ConsAddress != "" { + value := protoreflect.ValueOfString(x.ConsAddress) + if !f(fd_QueryValidatorAccountRequest_cons_address, value) { return } } @@ -3727,15 +3675,15 @@ func (x *fastReflection_QueryBalanceRequest) Range(f func(protoreflect.FieldDesc // In other cases (aside from the nullable cases above), // a proto3 scalar field is populated if it contains a non-zero value, and // a repeated field is populated if it is non-empty. -func (x *fastReflection_QueryBalanceRequest) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_QueryValidatorAccountRequest) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryBalanceRequest.address": - return x.Address != "" + case "cosmos.evm.vm.v1.QueryValidatorAccountRequest.cons_address": + return x.ConsAddress != "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountRequest does not contain field %s", fd.FullName())) } } @@ -3745,15 +3693,15 @@ func (x *fastReflection_QueryBalanceRequest) Has(fd protoreflect.FieldDescriptor // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryBalanceRequest) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_QueryValidatorAccountRequest) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryBalanceRequest.address": - x.Address = "" + case "cosmos.evm.vm.v1.QueryValidatorAccountRequest.cons_address": + x.ConsAddress = "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountRequest does not contain field %s", fd.FullName())) } } @@ -3763,16 +3711,16 @@ func (x *fastReflection_QueryBalanceRequest) Clear(fd protoreflect.FieldDescript // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_QueryBalanceRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryValidatorAccountRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "cosmos.evm.vm.v1.QueryBalanceRequest.address": - value := x.Address + case "cosmos.evm.vm.v1.QueryValidatorAccountRequest.cons_address": + value := x.ConsAddress return protoreflect.ValueOfString(value) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceRequest does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountRequest does not contain field %s", descriptor.FullName())) } } @@ -3786,15 +3734,15 @@ func (x *fastReflection_QueryBalanceRequest) Get(descriptor protoreflect.FieldDe // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryBalanceRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_QueryValidatorAccountRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryBalanceRequest.address": - x.Address = value.Interface().(string) + case "cosmos.evm.vm.v1.QueryValidatorAccountRequest.cons_address": + x.ConsAddress = value.Interface().(string) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountRequest does not contain field %s", fd.FullName())) } } @@ -3808,40 +3756,40 @@ func (x *fastReflection_QueryBalanceRequest) Set(fd protoreflect.FieldDescriptor // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryBalanceRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryValidatorAccountRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryBalanceRequest.address": - panic(fmt.Errorf("field address of message cosmos.evm.vm.v1.QueryBalanceRequest is not mutable")) + case "cosmos.evm.vm.v1.QueryValidatorAccountRequest.cons_address": + panic(fmt.Errorf("field cons_address of message cosmos.evm.vm.v1.QueryValidatorAccountRequest is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountRequest does not contain field %s", fd.FullName())) } } // NewField returns a new value that is assignable to the field // for the given descriptor. For scalars, this returns the default value. // For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_QueryBalanceRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryValidatorAccountRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryBalanceRequest.address": + case "cosmos.evm.vm.v1.QueryValidatorAccountRequest.cons_address": return protoreflect.ValueOfString("") default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountRequest does not contain field %s", fd.FullName())) } } // WhichOneof reports which field within the oneof is populated, // returning nil if none are populated. // It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_QueryBalanceRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_QueryValidatorAccountRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryBalanceRequest", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryValidatorAccountRequest", d.FullName())) } panic("unreachable") } @@ -3849,7 +3797,7 @@ func (x *fastReflection_QueryBalanceRequest) WhichOneof(d protoreflect.OneofDesc // GetUnknown retrieves the entire list of unknown fields. // The caller may only mutate the contents of the RawFields // if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_QueryBalanceRequest) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_QueryValidatorAccountRequest) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -3860,7 +3808,7 @@ func (x *fastReflection_QueryBalanceRequest) GetUnknown() protoreflect.RawFields // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryBalanceRequest) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_QueryValidatorAccountRequest) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -3872,7 +3820,7 @@ func (x *fastReflection_QueryBalanceRequest) SetUnknown(fields protoreflect.RawF // message type, but the details are implementation dependent. // Validity is not part of the protobuf data model, and may not // be preserved in marshaling or other operations. -func (x *fastReflection_QueryBalanceRequest) IsValid() bool { +func (x *fastReflection_QueryValidatorAccountRequest) IsValid() bool { return x != nil } @@ -3882,9 +3830,9 @@ func (x *fastReflection_QueryBalanceRequest) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_QueryBalanceRequest) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_QueryValidatorAccountRequest) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*QueryBalanceRequest) + x := input.Message.Interface().(*QueryValidatorAccountRequest) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -3896,7 +3844,7 @@ func (x *fastReflection_QueryBalanceRequest) ProtoMethods() *protoiface.Methods var n int var l int _ = l - l = len(x.Address) + l = len(x.ConsAddress) if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } @@ -3910,7 +3858,7 @@ func (x *fastReflection_QueryBalanceRequest) ProtoMethods() *protoiface.Methods } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*QueryBalanceRequest) + x := input.Message.Interface().(*QueryValidatorAccountRequest) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -3929,10 +3877,10 @@ func (x *fastReflection_QueryBalanceRequest) ProtoMethods() *protoiface.Methods i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } - if len(x.Address) > 0 { - i -= len(x.Address) - copy(dAtA[i:], x.Address) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Address))) + if len(x.ConsAddress) > 0 { + i -= len(x.ConsAddress) + copy(dAtA[i:], x.ConsAddress) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ConsAddress))) i-- dAtA[i] = 0xa } @@ -3947,7 +3895,7 @@ func (x *fastReflection_QueryBalanceRequest) ProtoMethods() *protoiface.Methods }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*QueryBalanceRequest) + x := input.Message.Interface().(*QueryValidatorAccountRequest) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -3979,15 +3927,15 @@ func (x *fastReflection_QueryBalanceRequest) ProtoMethods() *protoiface.Methods fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryBalanceRequest: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryValidatorAccountRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryBalanceRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryValidatorAccountRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ConsAddress", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -4015,7 +3963,7 @@ func (x *fastReflection_QueryBalanceRequest) ProtoMethods() *protoiface.Methods if postIndex > l { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF } - x.Address = string(dAtA[iNdEx:postIndex]) + x.ConsAddress = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -4053,25 +4001,29 @@ func (x *fastReflection_QueryBalanceRequest) ProtoMethods() *protoiface.Methods } var ( - md_QueryBalanceResponse protoreflect.MessageDescriptor - fd_QueryBalanceResponse_balance protoreflect.FieldDescriptor + md_QueryValidatorAccountResponse protoreflect.MessageDescriptor + fd_QueryValidatorAccountResponse_account_address protoreflect.FieldDescriptor + fd_QueryValidatorAccountResponse_sequence protoreflect.FieldDescriptor + fd_QueryValidatorAccountResponse_account_number protoreflect.FieldDescriptor ) func init() { file_cosmos_evm_vm_v1_query_proto_init() - md_QueryBalanceResponse = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryBalanceResponse") - fd_QueryBalanceResponse_balance = md_QueryBalanceResponse.Fields().ByName("balance") + md_QueryValidatorAccountResponse = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryValidatorAccountResponse") + fd_QueryValidatorAccountResponse_account_address = md_QueryValidatorAccountResponse.Fields().ByName("account_address") + fd_QueryValidatorAccountResponse_sequence = md_QueryValidatorAccountResponse.Fields().ByName("sequence") + fd_QueryValidatorAccountResponse_account_number = md_QueryValidatorAccountResponse.Fields().ByName("account_number") } -var _ protoreflect.Message = (*fastReflection_QueryBalanceResponse)(nil) +var _ protoreflect.Message = (*fastReflection_QueryValidatorAccountResponse)(nil) -type fastReflection_QueryBalanceResponse QueryBalanceResponse +type fastReflection_QueryValidatorAccountResponse QueryValidatorAccountResponse -func (x *QueryBalanceResponse) ProtoReflect() protoreflect.Message { - return (*fastReflection_QueryBalanceResponse)(x) +func (x *QueryValidatorAccountResponse) ProtoReflect() protoreflect.Message { + return (*fastReflection_QueryValidatorAccountResponse)(x) } -func (x *QueryBalanceResponse) slowProtoReflect() protoreflect.Message { +func (x *QueryValidatorAccountResponse) slowProtoReflect() protoreflect.Message { mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4083,43 +4035,43 @@ func (x *QueryBalanceResponse) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_QueryBalanceResponse_messageType fastReflection_QueryBalanceResponse_messageType -var _ protoreflect.MessageType = fastReflection_QueryBalanceResponse_messageType{} +var _fastReflection_QueryValidatorAccountResponse_messageType fastReflection_QueryValidatorAccountResponse_messageType +var _ protoreflect.MessageType = fastReflection_QueryValidatorAccountResponse_messageType{} -type fastReflection_QueryBalanceResponse_messageType struct{} +type fastReflection_QueryValidatorAccountResponse_messageType struct{} -func (x fastReflection_QueryBalanceResponse_messageType) Zero() protoreflect.Message { - return (*fastReflection_QueryBalanceResponse)(nil) +func (x fastReflection_QueryValidatorAccountResponse_messageType) Zero() protoreflect.Message { + return (*fastReflection_QueryValidatorAccountResponse)(nil) } -func (x fastReflection_QueryBalanceResponse_messageType) New() protoreflect.Message { - return new(fastReflection_QueryBalanceResponse) +func (x fastReflection_QueryValidatorAccountResponse_messageType) New() protoreflect.Message { + return new(fastReflection_QueryValidatorAccountResponse) } -func (x fastReflection_QueryBalanceResponse_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_QueryBalanceResponse +func (x fastReflection_QueryValidatorAccountResponse_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_QueryValidatorAccountResponse } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_QueryBalanceResponse) Descriptor() protoreflect.MessageDescriptor { - return md_QueryBalanceResponse +func (x *fastReflection_QueryValidatorAccountResponse) Descriptor() protoreflect.MessageDescriptor { + return md_QueryValidatorAccountResponse } // Type returns the message type, which encapsulates both Go and protobuf // type information. If the Go type information is not needed, // it is recommended that the message descriptor be used instead. -func (x *fastReflection_QueryBalanceResponse) Type() protoreflect.MessageType { - return _fastReflection_QueryBalanceResponse_messageType +func (x *fastReflection_QueryValidatorAccountResponse) Type() protoreflect.MessageType { + return _fastReflection_QueryValidatorAccountResponse_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_QueryBalanceResponse) New() protoreflect.Message { - return new(fastReflection_QueryBalanceResponse) +func (x *fastReflection_QueryValidatorAccountResponse) New() protoreflect.Message { + return new(fastReflection_QueryValidatorAccountResponse) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_QueryBalanceResponse) Interface() protoreflect.ProtoMessage { - return (*QueryBalanceResponse)(x) +func (x *fastReflection_QueryValidatorAccountResponse) Interface() protoreflect.ProtoMessage { + return (*QueryValidatorAccountResponse)(x) } // Range iterates over every populated field in an undefined order, @@ -4127,10 +4079,22 @@ func (x *fastReflection_QueryBalanceResponse) Interface() protoreflect.ProtoMess // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_QueryBalanceResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.Balance != "" { - value := protoreflect.ValueOfString(x.Balance) - if !f(fd_QueryBalanceResponse_balance, value) { +func (x *fastReflection_QueryValidatorAccountResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.AccountAddress != "" { + value := protoreflect.ValueOfString(x.AccountAddress) + if !f(fd_QueryValidatorAccountResponse_account_address, value) { + return + } + } + if x.Sequence != uint64(0) { + value := protoreflect.ValueOfUint64(x.Sequence) + if !f(fd_QueryValidatorAccountResponse_sequence, value) { + return + } + } + if x.AccountNumber != uint64(0) { + value := protoreflect.ValueOfUint64(x.AccountNumber) + if !f(fd_QueryValidatorAccountResponse_account_number, value) { return } } @@ -4147,15 +4111,19 @@ func (x *fastReflection_QueryBalanceResponse) Range(f func(protoreflect.FieldDes // In other cases (aside from the nullable cases above), // a proto3 scalar field is populated if it contains a non-zero value, and // a repeated field is populated if it is non-empty. -func (x *fastReflection_QueryBalanceResponse) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_QueryValidatorAccountResponse) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryBalanceResponse.balance": - return x.Balance != "" + case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_address": + return x.AccountAddress != "" + case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.sequence": + return x.Sequence != uint64(0) + case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_number": + return x.AccountNumber != uint64(0) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountResponse does not contain field %s", fd.FullName())) } } @@ -4165,15 +4133,19 @@ func (x *fastReflection_QueryBalanceResponse) Has(fd protoreflect.FieldDescripto // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryBalanceResponse) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_QueryValidatorAccountResponse) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryBalanceResponse.balance": - x.Balance = "" + case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_address": + x.AccountAddress = "" + case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.sequence": + x.Sequence = uint64(0) + case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_number": + x.AccountNumber = uint64(0) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountResponse does not contain field %s", fd.FullName())) } } @@ -4183,16 +4155,22 @@ func (x *fastReflection_QueryBalanceResponse) Clear(fd protoreflect.FieldDescrip // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_QueryBalanceResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryValidatorAccountResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "cosmos.evm.vm.v1.QueryBalanceResponse.balance": - value := x.Balance + case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_address": + value := x.AccountAddress return protoreflect.ValueOfString(value) + case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.sequence": + value := x.Sequence + return protoreflect.ValueOfUint64(value) + case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_number": + value := x.AccountNumber + return protoreflect.ValueOfUint64(value) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceResponse does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountResponse does not contain field %s", descriptor.FullName())) } } @@ -4206,15 +4184,19 @@ func (x *fastReflection_QueryBalanceResponse) Get(descriptor protoreflect.FieldD // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryBalanceResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_QueryValidatorAccountResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryBalanceResponse.balance": - x.Balance = value.Interface().(string) + case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_address": + x.AccountAddress = value.Interface().(string) + case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.sequence": + x.Sequence = value.Uint() + case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_number": + x.AccountNumber = value.Uint() default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountResponse does not contain field %s", fd.FullName())) } } @@ -4228,40 +4210,48 @@ func (x *fastReflection_QueryBalanceResponse) Set(fd protoreflect.FieldDescripto // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryBalanceResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryValidatorAccountResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryBalanceResponse.balance": - panic(fmt.Errorf("field balance of message cosmos.evm.vm.v1.QueryBalanceResponse is not mutable")) + case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_address": + panic(fmt.Errorf("field account_address of message cosmos.evm.vm.v1.QueryValidatorAccountResponse is not mutable")) + case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.sequence": + panic(fmt.Errorf("field sequence of message cosmos.evm.vm.v1.QueryValidatorAccountResponse is not mutable")) + case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_number": + panic(fmt.Errorf("field account_number of message cosmos.evm.vm.v1.QueryValidatorAccountResponse is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountResponse does not contain field %s", fd.FullName())) } } // NewField returns a new value that is assignable to the field // for the given descriptor. For scalars, this returns the default value. // For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_QueryBalanceResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryValidatorAccountResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryBalanceResponse.balance": + case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_address": return protoreflect.ValueOfString("") + case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.sequence": + return protoreflect.ValueOfUint64(uint64(0)) + case "cosmos.evm.vm.v1.QueryValidatorAccountResponse.account_number": + return protoreflect.ValueOfUint64(uint64(0)) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryValidatorAccountResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryValidatorAccountResponse does not contain field %s", fd.FullName())) } } // WhichOneof reports which field within the oneof is populated, // returning nil if none are populated. // It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_QueryBalanceResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_QueryValidatorAccountResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryBalanceResponse", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryValidatorAccountResponse", d.FullName())) } panic("unreachable") } @@ -4269,7 +4259,7 @@ func (x *fastReflection_QueryBalanceResponse) WhichOneof(d protoreflect.OneofDes // GetUnknown retrieves the entire list of unknown fields. // The caller may only mutate the contents of the RawFields // if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_QueryBalanceResponse) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_QueryValidatorAccountResponse) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -4280,7 +4270,7 @@ func (x *fastReflection_QueryBalanceResponse) GetUnknown() protoreflect.RawField // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryBalanceResponse) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_QueryValidatorAccountResponse) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -4292,7 +4282,7 @@ func (x *fastReflection_QueryBalanceResponse) SetUnknown(fields protoreflect.Raw // message type, but the details are implementation dependent. // Validity is not part of the protobuf data model, and may not // be preserved in marshaling or other operations. -func (x *fastReflection_QueryBalanceResponse) IsValid() bool { +func (x *fastReflection_QueryValidatorAccountResponse) IsValid() bool { return x != nil } @@ -4302,9 +4292,9 @@ func (x *fastReflection_QueryBalanceResponse) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_QueryBalanceResponse) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_QueryValidatorAccountResponse) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*QueryBalanceResponse) + x := input.Message.Interface().(*QueryValidatorAccountResponse) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -4316,10 +4306,16 @@ func (x *fastReflection_QueryBalanceResponse) ProtoMethods() *protoiface.Methods var n int var l int _ = l - l = len(x.Balance) + l = len(x.AccountAddress) if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } + if x.Sequence != 0 { + n += 1 + runtime.Sov(uint64(x.Sequence)) + } + if x.AccountNumber != 0 { + n += 1 + runtime.Sov(uint64(x.AccountNumber)) + } if x.unknownFields != nil { n += len(x.unknownFields) } @@ -4330,7 +4326,7 @@ func (x *fastReflection_QueryBalanceResponse) ProtoMethods() *protoiface.Methods } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*QueryBalanceResponse) + x := input.Message.Interface().(*QueryValidatorAccountResponse) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -4349,10 +4345,20 @@ func (x *fastReflection_QueryBalanceResponse) ProtoMethods() *protoiface.Methods i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } - if len(x.Balance) > 0 { - i -= len(x.Balance) - copy(dAtA[i:], x.Balance) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Balance))) + if x.AccountNumber != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.AccountNumber)) + i-- + dAtA[i] = 0x18 + } + if x.Sequence != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.Sequence)) + i-- + dAtA[i] = 0x10 + } + if len(x.AccountAddress) > 0 { + i -= len(x.AccountAddress) + copy(dAtA[i:], x.AccountAddress) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.AccountAddress))) i-- dAtA[i] = 0xa } @@ -4367,7 +4373,7 @@ func (x *fastReflection_QueryBalanceResponse) ProtoMethods() *protoiface.Methods }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*QueryBalanceResponse) + x := input.Message.Interface().(*QueryValidatorAccountResponse) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -4399,15 +4405,15 @@ func (x *fastReflection_QueryBalanceResponse) ProtoMethods() *protoiface.Methods fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryBalanceResponse: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryValidatorAccountResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryBalanceResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryValidatorAccountResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Balance", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field AccountAddress", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -4435,8 +4441,46 @@ func (x *fastReflection_QueryBalanceResponse) ProtoMethods() *protoiface.Methods if postIndex > l { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF } - x.Balance = string(dAtA[iNdEx:postIndex]) + x.AccountAddress = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 2: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Sequence", wireType) + } + x.Sequence = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + x.Sequence |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 3: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field AccountNumber", wireType) + } + x.AccountNumber = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + x.AccountNumber |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } default: iNdEx = preIndex skippy, err := runtime.Skip(dAtA[iNdEx:]) @@ -4473,27 +4517,25 @@ func (x *fastReflection_QueryBalanceResponse) ProtoMethods() *protoiface.Methods } var ( - md_QueryStorageRequest protoreflect.MessageDescriptor - fd_QueryStorageRequest_address protoreflect.FieldDescriptor - fd_QueryStorageRequest_key protoreflect.FieldDescriptor + md_QueryBalanceRequest protoreflect.MessageDescriptor + fd_QueryBalanceRequest_address protoreflect.FieldDescriptor ) func init() { file_cosmos_evm_vm_v1_query_proto_init() - md_QueryStorageRequest = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryStorageRequest") - fd_QueryStorageRequest_address = md_QueryStorageRequest.Fields().ByName("address") - fd_QueryStorageRequest_key = md_QueryStorageRequest.Fields().ByName("key") + md_QueryBalanceRequest = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryBalanceRequest") + fd_QueryBalanceRequest_address = md_QueryBalanceRequest.Fields().ByName("address") } -var _ protoreflect.Message = (*fastReflection_QueryStorageRequest)(nil) +var _ protoreflect.Message = (*fastReflection_QueryBalanceRequest)(nil) -type fastReflection_QueryStorageRequest QueryStorageRequest +type fastReflection_QueryBalanceRequest QueryBalanceRequest -func (x *QueryStorageRequest) ProtoReflect() protoreflect.Message { - return (*fastReflection_QueryStorageRequest)(x) +func (x *QueryBalanceRequest) ProtoReflect() protoreflect.Message { + return (*fastReflection_QueryBalanceRequest)(x) } -func (x *QueryStorageRequest) slowProtoReflect() protoreflect.Message { +func (x *QueryBalanceRequest) slowProtoReflect() protoreflect.Message { mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4505,43 +4547,43 @@ func (x *QueryStorageRequest) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_QueryStorageRequest_messageType fastReflection_QueryStorageRequest_messageType -var _ protoreflect.MessageType = fastReflection_QueryStorageRequest_messageType{} +var _fastReflection_QueryBalanceRequest_messageType fastReflection_QueryBalanceRequest_messageType +var _ protoreflect.MessageType = fastReflection_QueryBalanceRequest_messageType{} -type fastReflection_QueryStorageRequest_messageType struct{} +type fastReflection_QueryBalanceRequest_messageType struct{} -func (x fastReflection_QueryStorageRequest_messageType) Zero() protoreflect.Message { - return (*fastReflection_QueryStorageRequest)(nil) +func (x fastReflection_QueryBalanceRequest_messageType) Zero() protoreflect.Message { + return (*fastReflection_QueryBalanceRequest)(nil) } -func (x fastReflection_QueryStorageRequest_messageType) New() protoreflect.Message { - return new(fastReflection_QueryStorageRequest) +func (x fastReflection_QueryBalanceRequest_messageType) New() protoreflect.Message { + return new(fastReflection_QueryBalanceRequest) } -func (x fastReflection_QueryStorageRequest_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_QueryStorageRequest +func (x fastReflection_QueryBalanceRequest_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_QueryBalanceRequest } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_QueryStorageRequest) Descriptor() protoreflect.MessageDescriptor { - return md_QueryStorageRequest +func (x *fastReflection_QueryBalanceRequest) Descriptor() protoreflect.MessageDescriptor { + return md_QueryBalanceRequest } // Type returns the message type, which encapsulates both Go and protobuf // type information. If the Go type information is not needed, // it is recommended that the message descriptor be used instead. -func (x *fastReflection_QueryStorageRequest) Type() protoreflect.MessageType { - return _fastReflection_QueryStorageRequest_messageType +func (x *fastReflection_QueryBalanceRequest) Type() protoreflect.MessageType { + return _fastReflection_QueryBalanceRequest_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_QueryStorageRequest) New() protoreflect.Message { - return new(fastReflection_QueryStorageRequest) +func (x *fastReflection_QueryBalanceRequest) New() protoreflect.Message { + return new(fastReflection_QueryBalanceRequest) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_QueryStorageRequest) Interface() protoreflect.ProtoMessage { - return (*QueryStorageRequest)(x) +func (x *fastReflection_QueryBalanceRequest) Interface() protoreflect.ProtoMessage { + return (*QueryBalanceRequest)(x) } // Range iterates over every populated field in an undefined order, @@ -4549,16 +4591,10 @@ func (x *fastReflection_QueryStorageRequest) Interface() protoreflect.ProtoMessa // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_QueryStorageRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { +func (x *fastReflection_QueryBalanceRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { if x.Address != "" { value := protoreflect.ValueOfString(x.Address) - if !f(fd_QueryStorageRequest_address, value) { - return - } - } - if x.Key != "" { - value := protoreflect.ValueOfString(x.Key) - if !f(fd_QueryStorageRequest_key, value) { + if !f(fd_QueryBalanceRequest_address, value) { return } } @@ -4575,17 +4611,15 @@ func (x *fastReflection_QueryStorageRequest) Range(f func(protoreflect.FieldDesc // In other cases (aside from the nullable cases above), // a proto3 scalar field is populated if it contains a non-zero value, and // a repeated field is populated if it is non-empty. -func (x *fastReflection_QueryStorageRequest) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_QueryBalanceRequest) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryStorageRequest.address": + case "cosmos.evm.vm.v1.QueryBalanceRequest.address": return x.Address != "" - case "cosmos.evm.vm.v1.QueryStorageRequest.key": - return x.Key != "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceRequest does not contain field %s", fd.FullName())) } } @@ -4595,17 +4629,15 @@ func (x *fastReflection_QueryStorageRequest) Has(fd protoreflect.FieldDescriptor // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryStorageRequest) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_QueryBalanceRequest) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryStorageRequest.address": + case "cosmos.evm.vm.v1.QueryBalanceRequest.address": x.Address = "" - case "cosmos.evm.vm.v1.QueryStorageRequest.key": - x.Key = "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceRequest does not contain field %s", fd.FullName())) } } @@ -4615,19 +4647,16 @@ func (x *fastReflection_QueryStorageRequest) Clear(fd protoreflect.FieldDescript // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_QueryStorageRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryBalanceRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "cosmos.evm.vm.v1.QueryStorageRequest.address": + case "cosmos.evm.vm.v1.QueryBalanceRequest.address": value := x.Address return protoreflect.ValueOfString(value) - case "cosmos.evm.vm.v1.QueryStorageRequest.key": - value := x.Key - return protoreflect.ValueOfString(value) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageRequest does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceRequest does not contain field %s", descriptor.FullName())) } } @@ -4641,17 +4670,15 @@ func (x *fastReflection_QueryStorageRequest) Get(descriptor protoreflect.FieldDe // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryStorageRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_QueryBalanceRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryStorageRequest.address": + case "cosmos.evm.vm.v1.QueryBalanceRequest.address": x.Address = value.Interface().(string) - case "cosmos.evm.vm.v1.QueryStorageRequest.key": - x.Key = value.Interface().(string) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceRequest does not contain field %s", fd.FullName())) } } @@ -4665,44 +4692,40 @@ func (x *fastReflection_QueryStorageRequest) Set(fd protoreflect.FieldDescriptor // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryStorageRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryBalanceRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryStorageRequest.address": - panic(fmt.Errorf("field address of message cosmos.evm.vm.v1.QueryStorageRequest is not mutable")) - case "cosmos.evm.vm.v1.QueryStorageRequest.key": - panic(fmt.Errorf("field key of message cosmos.evm.vm.v1.QueryStorageRequest is not mutable")) + case "cosmos.evm.vm.v1.QueryBalanceRequest.address": + panic(fmt.Errorf("field address of message cosmos.evm.vm.v1.QueryBalanceRequest is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceRequest does not contain field %s", fd.FullName())) } } // NewField returns a new value that is assignable to the field // for the given descriptor. For scalars, this returns the default value. // For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_QueryStorageRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryBalanceRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryStorageRequest.address": - return protoreflect.ValueOfString("") - case "cosmos.evm.vm.v1.QueryStorageRequest.key": + case "cosmos.evm.vm.v1.QueryBalanceRequest.address": return protoreflect.ValueOfString("") default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceRequest does not contain field %s", fd.FullName())) } } // WhichOneof reports which field within the oneof is populated, // returning nil if none are populated. // It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_QueryStorageRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_QueryBalanceRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryStorageRequest", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryBalanceRequest", d.FullName())) } panic("unreachable") } @@ -4710,7 +4733,7 @@ func (x *fastReflection_QueryStorageRequest) WhichOneof(d protoreflect.OneofDesc // GetUnknown retrieves the entire list of unknown fields. // The caller may only mutate the contents of the RawFields // if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_QueryStorageRequest) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_QueryBalanceRequest) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -4721,7 +4744,7 @@ func (x *fastReflection_QueryStorageRequest) GetUnknown() protoreflect.RawFields // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryStorageRequest) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_QueryBalanceRequest) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -4733,7 +4756,7 @@ func (x *fastReflection_QueryStorageRequest) SetUnknown(fields protoreflect.RawF // message type, but the details are implementation dependent. // Validity is not part of the protobuf data model, and may not // be preserved in marshaling or other operations. -func (x *fastReflection_QueryStorageRequest) IsValid() bool { +func (x *fastReflection_QueryBalanceRequest) IsValid() bool { return x != nil } @@ -4743,9 +4766,9 @@ func (x *fastReflection_QueryStorageRequest) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_QueryStorageRequest) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_QueryBalanceRequest) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*QueryStorageRequest) + x := input.Message.Interface().(*QueryBalanceRequest) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -4761,10 +4784,6 @@ func (x *fastReflection_QueryStorageRequest) ProtoMethods() *protoiface.Methods if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } - l = len(x.Key) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } if x.unknownFields != nil { n += len(x.unknownFields) } @@ -4775,7 +4794,7 @@ func (x *fastReflection_QueryStorageRequest) ProtoMethods() *protoiface.Methods } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*QueryStorageRequest) + x := input.Message.Interface().(*QueryBalanceRequest) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -4794,13 +4813,6 @@ func (x *fastReflection_QueryStorageRequest) ProtoMethods() *protoiface.Methods i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } - if len(x.Key) > 0 { - i -= len(x.Key) - copy(dAtA[i:], x.Key) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Key))) - i-- - dAtA[i] = 0x12 - } if len(x.Address) > 0 { i -= len(x.Address) copy(dAtA[i:], x.Address) @@ -4819,7 +4831,7 @@ func (x *fastReflection_QueryStorageRequest) ProtoMethods() *protoiface.Methods }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*QueryStorageRequest) + x := input.Message.Interface().(*QueryBalanceRequest) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -4851,10 +4863,10 @@ func (x *fastReflection_QueryStorageRequest) ProtoMethods() *protoiface.Methods fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryStorageRequest: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryBalanceRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryStorageRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryBalanceRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -4889,38 +4901,6 @@ func (x *fastReflection_QueryStorageRequest) ProtoMethods() *protoiface.Methods } x.Address = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 2: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Key", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow - } - if iNdEx >= l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - x.Key = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex default: iNdEx = preIndex skippy, err := runtime.Skip(dAtA[iNdEx:]) @@ -4957,25 +4937,25 @@ func (x *fastReflection_QueryStorageRequest) ProtoMethods() *protoiface.Methods } var ( - md_QueryStorageResponse protoreflect.MessageDescriptor - fd_QueryStorageResponse_value protoreflect.FieldDescriptor + md_QueryBalanceResponse protoreflect.MessageDescriptor + fd_QueryBalanceResponse_balance protoreflect.FieldDescriptor ) func init() { file_cosmos_evm_vm_v1_query_proto_init() - md_QueryStorageResponse = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryStorageResponse") - fd_QueryStorageResponse_value = md_QueryStorageResponse.Fields().ByName("value") + md_QueryBalanceResponse = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryBalanceResponse") + fd_QueryBalanceResponse_balance = md_QueryBalanceResponse.Fields().ByName("balance") } -var _ protoreflect.Message = (*fastReflection_QueryStorageResponse)(nil) +var _ protoreflect.Message = (*fastReflection_QueryBalanceResponse)(nil) -type fastReflection_QueryStorageResponse QueryStorageResponse +type fastReflection_QueryBalanceResponse QueryBalanceResponse -func (x *QueryStorageResponse) ProtoReflect() protoreflect.Message { - return (*fastReflection_QueryStorageResponse)(x) +func (x *QueryBalanceResponse) ProtoReflect() protoreflect.Message { + return (*fastReflection_QueryBalanceResponse)(x) } -func (x *QueryStorageResponse) slowProtoReflect() protoreflect.Message { +func (x *QueryBalanceResponse) slowProtoReflect() protoreflect.Message { mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4987,43 +4967,43 @@ func (x *QueryStorageResponse) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_QueryStorageResponse_messageType fastReflection_QueryStorageResponse_messageType -var _ protoreflect.MessageType = fastReflection_QueryStorageResponse_messageType{} +var _fastReflection_QueryBalanceResponse_messageType fastReflection_QueryBalanceResponse_messageType +var _ protoreflect.MessageType = fastReflection_QueryBalanceResponse_messageType{} -type fastReflection_QueryStorageResponse_messageType struct{} +type fastReflection_QueryBalanceResponse_messageType struct{} -func (x fastReflection_QueryStorageResponse_messageType) Zero() protoreflect.Message { - return (*fastReflection_QueryStorageResponse)(nil) +func (x fastReflection_QueryBalanceResponse_messageType) Zero() protoreflect.Message { + return (*fastReflection_QueryBalanceResponse)(nil) } -func (x fastReflection_QueryStorageResponse_messageType) New() protoreflect.Message { - return new(fastReflection_QueryStorageResponse) +func (x fastReflection_QueryBalanceResponse_messageType) New() protoreflect.Message { + return new(fastReflection_QueryBalanceResponse) } -func (x fastReflection_QueryStorageResponse_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_QueryStorageResponse +func (x fastReflection_QueryBalanceResponse_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_QueryBalanceResponse } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_QueryStorageResponse) Descriptor() protoreflect.MessageDescriptor { - return md_QueryStorageResponse +func (x *fastReflection_QueryBalanceResponse) Descriptor() protoreflect.MessageDescriptor { + return md_QueryBalanceResponse } // Type returns the message type, which encapsulates both Go and protobuf // type information. If the Go type information is not needed, // it is recommended that the message descriptor be used instead. -func (x *fastReflection_QueryStorageResponse) Type() protoreflect.MessageType { - return _fastReflection_QueryStorageResponse_messageType +func (x *fastReflection_QueryBalanceResponse) Type() protoreflect.MessageType { + return _fastReflection_QueryBalanceResponse_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_QueryStorageResponse) New() protoreflect.Message { - return new(fastReflection_QueryStorageResponse) +func (x *fastReflection_QueryBalanceResponse) New() protoreflect.Message { + return new(fastReflection_QueryBalanceResponse) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_QueryStorageResponse) Interface() protoreflect.ProtoMessage { - return (*QueryStorageResponse)(x) +func (x *fastReflection_QueryBalanceResponse) Interface() protoreflect.ProtoMessage { + return (*QueryBalanceResponse)(x) } // Range iterates over every populated field in an undefined order, @@ -5031,10 +5011,10 @@ func (x *fastReflection_QueryStorageResponse) Interface() protoreflect.ProtoMess // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_QueryStorageResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.Value != "" { - value := protoreflect.ValueOfString(x.Value) - if !f(fd_QueryStorageResponse_value, value) { +func (x *fastReflection_QueryBalanceResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Balance != "" { + value := protoreflect.ValueOfString(x.Balance) + if !f(fd_QueryBalanceResponse_balance, value) { return } } @@ -5051,15 +5031,15 @@ func (x *fastReflection_QueryStorageResponse) Range(f func(protoreflect.FieldDes // In other cases (aside from the nullable cases above), // a proto3 scalar field is populated if it contains a non-zero value, and // a repeated field is populated if it is non-empty. -func (x *fastReflection_QueryStorageResponse) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_QueryBalanceResponse) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryStorageResponse.value": - return x.Value != "" + case "cosmos.evm.vm.v1.QueryBalanceResponse.balance": + return x.Balance != "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceResponse does not contain field %s", fd.FullName())) } } @@ -5069,15 +5049,15 @@ func (x *fastReflection_QueryStorageResponse) Has(fd protoreflect.FieldDescripto // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryStorageResponse) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_QueryBalanceResponse) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryStorageResponse.value": - x.Value = "" + case "cosmos.evm.vm.v1.QueryBalanceResponse.balance": + x.Balance = "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceResponse does not contain field %s", fd.FullName())) } } @@ -5087,16 +5067,16 @@ func (x *fastReflection_QueryStorageResponse) Clear(fd protoreflect.FieldDescrip // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_QueryStorageResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryBalanceResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "cosmos.evm.vm.v1.QueryStorageResponse.value": - value := x.Value + case "cosmos.evm.vm.v1.QueryBalanceResponse.balance": + value := x.Balance return protoreflect.ValueOfString(value) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageResponse does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceResponse does not contain field %s", descriptor.FullName())) } } @@ -5110,15 +5090,15 @@ func (x *fastReflection_QueryStorageResponse) Get(descriptor protoreflect.FieldD // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryStorageResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_QueryBalanceResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryStorageResponse.value": - x.Value = value.Interface().(string) + case "cosmos.evm.vm.v1.QueryBalanceResponse.balance": + x.Balance = value.Interface().(string) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceResponse does not contain field %s", fd.FullName())) } } @@ -5132,40 +5112,40 @@ func (x *fastReflection_QueryStorageResponse) Set(fd protoreflect.FieldDescripto // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryStorageResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryBalanceResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryStorageResponse.value": - panic(fmt.Errorf("field value of message cosmos.evm.vm.v1.QueryStorageResponse is not mutable")) + case "cosmos.evm.vm.v1.QueryBalanceResponse.balance": + panic(fmt.Errorf("field balance of message cosmos.evm.vm.v1.QueryBalanceResponse is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceResponse does not contain field %s", fd.FullName())) } } // NewField returns a new value that is assignable to the field // for the given descriptor. For scalars, this returns the default value. // For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_QueryStorageResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryBalanceResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryStorageResponse.value": + case "cosmos.evm.vm.v1.QueryBalanceResponse.balance": return protoreflect.ValueOfString("") default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryBalanceResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryBalanceResponse does not contain field %s", fd.FullName())) } } // WhichOneof reports which field within the oneof is populated, // returning nil if none are populated. // It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_QueryStorageResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_QueryBalanceResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryStorageResponse", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryBalanceResponse", d.FullName())) } panic("unreachable") } @@ -5173,7 +5153,7 @@ func (x *fastReflection_QueryStorageResponse) WhichOneof(d protoreflect.OneofDes // GetUnknown retrieves the entire list of unknown fields. // The caller may only mutate the contents of the RawFields // if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_QueryStorageResponse) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_QueryBalanceResponse) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -5184,7 +5164,7 @@ func (x *fastReflection_QueryStorageResponse) GetUnknown() protoreflect.RawField // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryStorageResponse) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_QueryBalanceResponse) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -5196,7 +5176,7 @@ func (x *fastReflection_QueryStorageResponse) SetUnknown(fields protoreflect.Raw // message type, but the details are implementation dependent. // Validity is not part of the protobuf data model, and may not // be preserved in marshaling or other operations. -func (x *fastReflection_QueryStorageResponse) IsValid() bool { +func (x *fastReflection_QueryBalanceResponse) IsValid() bool { return x != nil } @@ -5206,9 +5186,9 @@ func (x *fastReflection_QueryStorageResponse) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_QueryStorageResponse) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_QueryBalanceResponse) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*QueryStorageResponse) + x := input.Message.Interface().(*QueryBalanceResponse) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -5220,7 +5200,7 @@ func (x *fastReflection_QueryStorageResponse) ProtoMethods() *protoiface.Methods var n int var l int _ = l - l = len(x.Value) + l = len(x.Balance) if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } @@ -5234,7 +5214,7 @@ func (x *fastReflection_QueryStorageResponse) ProtoMethods() *protoiface.Methods } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*QueryStorageResponse) + x := input.Message.Interface().(*QueryBalanceResponse) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -5253,10 +5233,10 @@ func (x *fastReflection_QueryStorageResponse) ProtoMethods() *protoiface.Methods i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } - if len(x.Value) > 0 { - i -= len(x.Value) - copy(dAtA[i:], x.Value) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Value))) + if len(x.Balance) > 0 { + i -= len(x.Balance) + copy(dAtA[i:], x.Balance) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Balance))) i-- dAtA[i] = 0xa } @@ -5271,7 +5251,7 @@ func (x *fastReflection_QueryStorageResponse) ProtoMethods() *protoiface.Methods }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*QueryStorageResponse) + x := input.Message.Interface().(*QueryBalanceResponse) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -5303,15 +5283,15 @@ func (x *fastReflection_QueryStorageResponse) ProtoMethods() *protoiface.Methods fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryStorageResponse: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryBalanceResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryStorageResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryBalanceResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Value", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Balance", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -5339,7 +5319,7 @@ func (x *fastReflection_QueryStorageResponse) ProtoMethods() *protoiface.Methods if postIndex > l { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF } - x.Value = string(dAtA[iNdEx:postIndex]) + x.Balance = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -5377,25 +5357,27 @@ func (x *fastReflection_QueryStorageResponse) ProtoMethods() *protoiface.Methods } var ( - md_QueryCodeRequest protoreflect.MessageDescriptor - fd_QueryCodeRequest_address protoreflect.FieldDescriptor + md_QueryStorageRequest protoreflect.MessageDescriptor + fd_QueryStorageRequest_address protoreflect.FieldDescriptor + fd_QueryStorageRequest_key protoreflect.FieldDescriptor ) func init() { file_cosmos_evm_vm_v1_query_proto_init() - md_QueryCodeRequest = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryCodeRequest") - fd_QueryCodeRequest_address = md_QueryCodeRequest.Fields().ByName("address") + md_QueryStorageRequest = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryStorageRequest") + fd_QueryStorageRequest_address = md_QueryStorageRequest.Fields().ByName("address") + fd_QueryStorageRequest_key = md_QueryStorageRequest.Fields().ByName("key") } -var _ protoreflect.Message = (*fastReflection_QueryCodeRequest)(nil) +var _ protoreflect.Message = (*fastReflection_QueryStorageRequest)(nil) -type fastReflection_QueryCodeRequest QueryCodeRequest +type fastReflection_QueryStorageRequest QueryStorageRequest -func (x *QueryCodeRequest) ProtoReflect() protoreflect.Message { - return (*fastReflection_QueryCodeRequest)(x) +func (x *QueryStorageRequest) ProtoReflect() protoreflect.Message { + return (*fastReflection_QueryStorageRequest)(x) } -func (x *QueryCodeRequest) slowProtoReflect() protoreflect.Message { +func (x *QueryStorageRequest) slowProtoReflect() protoreflect.Message { mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5407,43 +5389,43 @@ func (x *QueryCodeRequest) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_QueryCodeRequest_messageType fastReflection_QueryCodeRequest_messageType -var _ protoreflect.MessageType = fastReflection_QueryCodeRequest_messageType{} +var _fastReflection_QueryStorageRequest_messageType fastReflection_QueryStorageRequest_messageType +var _ protoreflect.MessageType = fastReflection_QueryStorageRequest_messageType{} -type fastReflection_QueryCodeRequest_messageType struct{} +type fastReflection_QueryStorageRequest_messageType struct{} -func (x fastReflection_QueryCodeRequest_messageType) Zero() protoreflect.Message { - return (*fastReflection_QueryCodeRequest)(nil) +func (x fastReflection_QueryStorageRequest_messageType) Zero() protoreflect.Message { + return (*fastReflection_QueryStorageRequest)(nil) } -func (x fastReflection_QueryCodeRequest_messageType) New() protoreflect.Message { - return new(fastReflection_QueryCodeRequest) +func (x fastReflection_QueryStorageRequest_messageType) New() protoreflect.Message { + return new(fastReflection_QueryStorageRequest) } -func (x fastReflection_QueryCodeRequest_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_QueryCodeRequest +func (x fastReflection_QueryStorageRequest_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_QueryStorageRequest } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_QueryCodeRequest) Descriptor() protoreflect.MessageDescriptor { - return md_QueryCodeRequest +func (x *fastReflection_QueryStorageRequest) Descriptor() protoreflect.MessageDescriptor { + return md_QueryStorageRequest } // Type returns the message type, which encapsulates both Go and protobuf // type information. If the Go type information is not needed, // it is recommended that the message descriptor be used instead. -func (x *fastReflection_QueryCodeRequest) Type() protoreflect.MessageType { - return _fastReflection_QueryCodeRequest_messageType +func (x *fastReflection_QueryStorageRequest) Type() protoreflect.MessageType { + return _fastReflection_QueryStorageRequest_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_QueryCodeRequest) New() protoreflect.Message { - return new(fastReflection_QueryCodeRequest) +func (x *fastReflection_QueryStorageRequest) New() protoreflect.Message { + return new(fastReflection_QueryStorageRequest) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_QueryCodeRequest) Interface() protoreflect.ProtoMessage { - return (*QueryCodeRequest)(x) +func (x *fastReflection_QueryStorageRequest) Interface() protoreflect.ProtoMessage { + return (*QueryStorageRequest)(x) } // Range iterates over every populated field in an undefined order, @@ -5451,10 +5433,16 @@ func (x *fastReflection_QueryCodeRequest) Interface() protoreflect.ProtoMessage // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_QueryCodeRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { +func (x *fastReflection_QueryStorageRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { if x.Address != "" { value := protoreflect.ValueOfString(x.Address) - if !f(fd_QueryCodeRequest_address, value) { + if !f(fd_QueryStorageRequest_address, value) { + return + } + } + if x.Key != "" { + value := protoreflect.ValueOfString(x.Key) + if !f(fd_QueryStorageRequest_key, value) { return } } @@ -5471,15 +5459,17 @@ func (x *fastReflection_QueryCodeRequest) Range(f func(protoreflect.FieldDescrip // In other cases (aside from the nullable cases above), // a proto3 scalar field is populated if it contains a non-zero value, and // a repeated field is populated if it is non-empty. -func (x *fastReflection_QueryCodeRequest) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_QueryStorageRequest) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryCodeRequest.address": + case "cosmos.evm.vm.v1.QueryStorageRequest.address": return x.Address != "" + case "cosmos.evm.vm.v1.QueryStorageRequest.key": + return x.Key != "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageRequest does not contain field %s", fd.FullName())) } } @@ -5489,15 +5479,17 @@ func (x *fastReflection_QueryCodeRequest) Has(fd protoreflect.FieldDescriptor) b // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryCodeRequest) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_QueryStorageRequest) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryCodeRequest.address": + case "cosmos.evm.vm.v1.QueryStorageRequest.address": x.Address = "" + case "cosmos.evm.vm.v1.QueryStorageRequest.key": + x.Key = "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageRequest does not contain field %s", fd.FullName())) } } @@ -5507,16 +5499,19 @@ func (x *fastReflection_QueryCodeRequest) Clear(fd protoreflect.FieldDescriptor) // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_QueryCodeRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryStorageRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "cosmos.evm.vm.v1.QueryCodeRequest.address": + case "cosmos.evm.vm.v1.QueryStorageRequest.address": value := x.Address return protoreflect.ValueOfString(value) + case "cosmos.evm.vm.v1.QueryStorageRequest.key": + value := x.Key + return protoreflect.ValueOfString(value) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeRequest does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageRequest does not contain field %s", descriptor.FullName())) } } @@ -5530,15 +5525,17 @@ func (x *fastReflection_QueryCodeRequest) Get(descriptor protoreflect.FieldDescr // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryCodeRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_QueryStorageRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryCodeRequest.address": + case "cosmos.evm.vm.v1.QueryStorageRequest.address": x.Address = value.Interface().(string) + case "cosmos.evm.vm.v1.QueryStorageRequest.key": + x.Key = value.Interface().(string) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageRequest does not contain field %s", fd.FullName())) } } @@ -5552,40 +5549,44 @@ func (x *fastReflection_QueryCodeRequest) Set(fd protoreflect.FieldDescriptor, v // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryCodeRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryStorageRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryCodeRequest.address": - panic(fmt.Errorf("field address of message cosmos.evm.vm.v1.QueryCodeRequest is not mutable")) + case "cosmos.evm.vm.v1.QueryStorageRequest.address": + panic(fmt.Errorf("field address of message cosmos.evm.vm.v1.QueryStorageRequest is not mutable")) + case "cosmos.evm.vm.v1.QueryStorageRequest.key": + panic(fmt.Errorf("field key of message cosmos.evm.vm.v1.QueryStorageRequest is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageRequest does not contain field %s", fd.FullName())) } } // NewField returns a new value that is assignable to the field // for the given descriptor. For scalars, this returns the default value. // For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_QueryCodeRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryStorageRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryCodeRequest.address": + case "cosmos.evm.vm.v1.QueryStorageRequest.address": + return protoreflect.ValueOfString("") + case "cosmos.evm.vm.v1.QueryStorageRequest.key": return protoreflect.ValueOfString("") default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageRequest does not contain field %s", fd.FullName())) } } // WhichOneof reports which field within the oneof is populated, // returning nil if none are populated. // It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_QueryCodeRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_QueryStorageRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryCodeRequest", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryStorageRequest", d.FullName())) } panic("unreachable") } @@ -5593,7 +5594,7 @@ func (x *fastReflection_QueryCodeRequest) WhichOneof(d protoreflect.OneofDescrip // GetUnknown retrieves the entire list of unknown fields. // The caller may only mutate the contents of the RawFields // if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_QueryCodeRequest) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_QueryStorageRequest) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -5604,7 +5605,7 @@ func (x *fastReflection_QueryCodeRequest) GetUnknown() protoreflect.RawFields { // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryCodeRequest) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_QueryStorageRequest) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -5616,7 +5617,7 @@ func (x *fastReflection_QueryCodeRequest) SetUnknown(fields protoreflect.RawFiel // message type, but the details are implementation dependent. // Validity is not part of the protobuf data model, and may not // be preserved in marshaling or other operations. -func (x *fastReflection_QueryCodeRequest) IsValid() bool { +func (x *fastReflection_QueryStorageRequest) IsValid() bool { return x != nil } @@ -5626,9 +5627,9 @@ func (x *fastReflection_QueryCodeRequest) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_QueryCodeRequest) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_QueryStorageRequest) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*QueryCodeRequest) + x := input.Message.Interface().(*QueryStorageRequest) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -5644,6 +5645,10 @@ func (x *fastReflection_QueryCodeRequest) ProtoMethods() *protoiface.Methods { if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } + l = len(x.Key) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } if x.unknownFields != nil { n += len(x.unknownFields) } @@ -5654,7 +5659,7 @@ func (x *fastReflection_QueryCodeRequest) ProtoMethods() *protoiface.Methods { } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*QueryCodeRequest) + x := input.Message.Interface().(*QueryStorageRequest) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -5673,6 +5678,13 @@ func (x *fastReflection_QueryCodeRequest) ProtoMethods() *protoiface.Methods { i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } + if len(x.Key) > 0 { + i -= len(x.Key) + copy(dAtA[i:], x.Key) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Key))) + i-- + dAtA[i] = 0x12 + } if len(x.Address) > 0 { i -= len(x.Address) copy(dAtA[i:], x.Address) @@ -5691,7 +5703,7 @@ func (x *fastReflection_QueryCodeRequest) ProtoMethods() *protoiface.Methods { }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*QueryCodeRequest) + x := input.Message.Interface().(*QueryStorageRequest) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -5723,10 +5735,10 @@ func (x *fastReflection_QueryCodeRequest) ProtoMethods() *protoiface.Methods { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryCodeRequest: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryStorageRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryCodeRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryStorageRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -5761,6 +5773,38 @@ func (x *fastReflection_QueryCodeRequest) ProtoMethods() *protoiface.Methods { } x.Address = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Key", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.Key = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := runtime.Skip(dAtA[iNdEx:]) @@ -5797,25 +5841,25 @@ func (x *fastReflection_QueryCodeRequest) ProtoMethods() *protoiface.Methods { } var ( - md_QueryCodeResponse protoreflect.MessageDescriptor - fd_QueryCodeResponse_code protoreflect.FieldDescriptor + md_QueryStorageResponse protoreflect.MessageDescriptor + fd_QueryStorageResponse_value protoreflect.FieldDescriptor ) func init() { file_cosmos_evm_vm_v1_query_proto_init() - md_QueryCodeResponse = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryCodeResponse") - fd_QueryCodeResponse_code = md_QueryCodeResponse.Fields().ByName("code") + md_QueryStorageResponse = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryStorageResponse") + fd_QueryStorageResponse_value = md_QueryStorageResponse.Fields().ByName("value") } -var _ protoreflect.Message = (*fastReflection_QueryCodeResponse)(nil) +var _ protoreflect.Message = (*fastReflection_QueryStorageResponse)(nil) -type fastReflection_QueryCodeResponse QueryCodeResponse +type fastReflection_QueryStorageResponse QueryStorageResponse -func (x *QueryCodeResponse) ProtoReflect() protoreflect.Message { - return (*fastReflection_QueryCodeResponse)(x) +func (x *QueryStorageResponse) ProtoReflect() protoreflect.Message { + return (*fastReflection_QueryStorageResponse)(x) } -func (x *QueryCodeResponse) slowProtoReflect() protoreflect.Message { +func (x *QueryStorageResponse) slowProtoReflect() protoreflect.Message { mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5827,43 +5871,43 @@ func (x *QueryCodeResponse) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_QueryCodeResponse_messageType fastReflection_QueryCodeResponse_messageType -var _ protoreflect.MessageType = fastReflection_QueryCodeResponse_messageType{} +var _fastReflection_QueryStorageResponse_messageType fastReflection_QueryStorageResponse_messageType +var _ protoreflect.MessageType = fastReflection_QueryStorageResponse_messageType{} -type fastReflection_QueryCodeResponse_messageType struct{} +type fastReflection_QueryStorageResponse_messageType struct{} -func (x fastReflection_QueryCodeResponse_messageType) Zero() protoreflect.Message { - return (*fastReflection_QueryCodeResponse)(nil) +func (x fastReflection_QueryStorageResponse_messageType) Zero() protoreflect.Message { + return (*fastReflection_QueryStorageResponse)(nil) } -func (x fastReflection_QueryCodeResponse_messageType) New() protoreflect.Message { - return new(fastReflection_QueryCodeResponse) +func (x fastReflection_QueryStorageResponse_messageType) New() protoreflect.Message { + return new(fastReflection_QueryStorageResponse) } -func (x fastReflection_QueryCodeResponse_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_QueryCodeResponse +func (x fastReflection_QueryStorageResponse_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_QueryStorageResponse } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_QueryCodeResponse) Descriptor() protoreflect.MessageDescriptor { - return md_QueryCodeResponse +func (x *fastReflection_QueryStorageResponse) Descriptor() protoreflect.MessageDescriptor { + return md_QueryStorageResponse } // Type returns the message type, which encapsulates both Go and protobuf // type information. If the Go type information is not needed, // it is recommended that the message descriptor be used instead. -func (x *fastReflection_QueryCodeResponse) Type() protoreflect.MessageType { - return _fastReflection_QueryCodeResponse_messageType +func (x *fastReflection_QueryStorageResponse) Type() protoreflect.MessageType { + return _fastReflection_QueryStorageResponse_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_QueryCodeResponse) New() protoreflect.Message { - return new(fastReflection_QueryCodeResponse) +func (x *fastReflection_QueryStorageResponse) New() protoreflect.Message { + return new(fastReflection_QueryStorageResponse) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_QueryCodeResponse) Interface() protoreflect.ProtoMessage { - return (*QueryCodeResponse)(x) +func (x *fastReflection_QueryStorageResponse) Interface() protoreflect.ProtoMessage { + return (*QueryStorageResponse)(x) } // Range iterates over every populated field in an undefined order, @@ -5871,10 +5915,10 @@ func (x *fastReflection_QueryCodeResponse) Interface() protoreflect.ProtoMessage // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_QueryCodeResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if len(x.Code) != 0 { - value := protoreflect.ValueOfBytes(x.Code) - if !f(fd_QueryCodeResponse_code, value) { +func (x *fastReflection_QueryStorageResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Value != "" { + value := protoreflect.ValueOfString(x.Value) + if !f(fd_QueryStorageResponse_value, value) { return } } @@ -5891,15 +5935,15 @@ func (x *fastReflection_QueryCodeResponse) Range(f func(protoreflect.FieldDescri // In other cases (aside from the nullable cases above), // a proto3 scalar field is populated if it contains a non-zero value, and // a repeated field is populated if it is non-empty. -func (x *fastReflection_QueryCodeResponse) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_QueryStorageResponse) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryCodeResponse.code": - return len(x.Code) != 0 + case "cosmos.evm.vm.v1.QueryStorageResponse.value": + return x.Value != "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageResponse does not contain field %s", fd.FullName())) } } @@ -5909,15 +5953,15 @@ func (x *fastReflection_QueryCodeResponse) Has(fd protoreflect.FieldDescriptor) // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryCodeResponse) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_QueryStorageResponse) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryCodeResponse.code": - x.Code = nil + case "cosmos.evm.vm.v1.QueryStorageResponse.value": + x.Value = "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageResponse does not contain field %s", fd.FullName())) } } @@ -5927,16 +5971,16 @@ func (x *fastReflection_QueryCodeResponse) Clear(fd protoreflect.FieldDescriptor // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_QueryCodeResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryStorageResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "cosmos.evm.vm.v1.QueryCodeResponse.code": - value := x.Code - return protoreflect.ValueOfBytes(value) + case "cosmos.evm.vm.v1.QueryStorageResponse.value": + value := x.Value + return protoreflect.ValueOfString(value) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeResponse does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageResponse does not contain field %s", descriptor.FullName())) } } @@ -5950,15 +5994,15 @@ func (x *fastReflection_QueryCodeResponse) Get(descriptor protoreflect.FieldDesc // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryCodeResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_QueryStorageResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryCodeResponse.code": - x.Code = value.Bytes() + case "cosmos.evm.vm.v1.QueryStorageResponse.value": + x.Value = value.Interface().(string) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageResponse does not contain field %s", fd.FullName())) } } @@ -5972,40 +6016,40 @@ func (x *fastReflection_QueryCodeResponse) Set(fd protoreflect.FieldDescriptor, // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryCodeResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryStorageResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryCodeResponse.code": - panic(fmt.Errorf("field code of message cosmos.evm.vm.v1.QueryCodeResponse is not mutable")) + case "cosmos.evm.vm.v1.QueryStorageResponse.value": + panic(fmt.Errorf("field value of message cosmos.evm.vm.v1.QueryStorageResponse is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageResponse does not contain field %s", fd.FullName())) } } // NewField returns a new value that is assignable to the field // for the given descriptor. For scalars, this returns the default value. // For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_QueryCodeResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryStorageResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryCodeResponse.code": - return protoreflect.ValueOfBytes(nil) + case "cosmos.evm.vm.v1.QueryStorageResponse.value": + return protoreflect.ValueOfString("") default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryStorageResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryStorageResponse does not contain field %s", fd.FullName())) } } // WhichOneof reports which field within the oneof is populated, // returning nil if none are populated. // It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_QueryCodeResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_QueryStorageResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryCodeResponse", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryStorageResponse", d.FullName())) } panic("unreachable") } @@ -6013,7 +6057,7 @@ func (x *fastReflection_QueryCodeResponse) WhichOneof(d protoreflect.OneofDescri // GetUnknown retrieves the entire list of unknown fields. // The caller may only mutate the contents of the RawFields // if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_QueryCodeResponse) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_QueryStorageResponse) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -6024,7 +6068,7 @@ func (x *fastReflection_QueryCodeResponse) GetUnknown() protoreflect.RawFields { // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryCodeResponse) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_QueryStorageResponse) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -6036,7 +6080,7 @@ func (x *fastReflection_QueryCodeResponse) SetUnknown(fields protoreflect.RawFie // message type, but the details are implementation dependent. // Validity is not part of the protobuf data model, and may not // be preserved in marshaling or other operations. -func (x *fastReflection_QueryCodeResponse) IsValid() bool { +func (x *fastReflection_QueryStorageResponse) IsValid() bool { return x != nil } @@ -6046,9 +6090,9 @@ func (x *fastReflection_QueryCodeResponse) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_QueryCodeResponse) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_QueryStorageResponse) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*QueryCodeResponse) + x := input.Message.Interface().(*QueryStorageResponse) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -6060,7 +6104,7 @@ func (x *fastReflection_QueryCodeResponse) ProtoMethods() *protoiface.Methods { var n int var l int _ = l - l = len(x.Code) + l = len(x.Value) if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } @@ -6074,7 +6118,7 @@ func (x *fastReflection_QueryCodeResponse) ProtoMethods() *protoiface.Methods { } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*QueryCodeResponse) + x := input.Message.Interface().(*QueryStorageResponse) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -6093,10 +6137,10 @@ func (x *fastReflection_QueryCodeResponse) ProtoMethods() *protoiface.Methods { i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } - if len(x.Code) > 0 { - i -= len(x.Code) - copy(dAtA[i:], x.Code) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Code))) + if len(x.Value) > 0 { + i -= len(x.Value) + copy(dAtA[i:], x.Value) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Value))) i-- dAtA[i] = 0xa } @@ -6111,7 +6155,7 @@ func (x *fastReflection_QueryCodeResponse) ProtoMethods() *protoiface.Methods { }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*QueryCodeResponse) + x := input.Message.Interface().(*QueryStorageResponse) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -6143,17 +6187,17 @@ func (x *fastReflection_QueryCodeResponse) ProtoMethods() *protoiface.Methods { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryCodeResponse: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryStorageResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryCodeResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryStorageResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Code", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Value", wireType) } - var byteLen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow @@ -6163,25 +6207,23 @@ func (x *fastReflection_QueryCodeResponse) ProtoMethods() *protoiface.Methods { } b := dAtA[iNdEx] iNdEx++ - byteLen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if byteLen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength } - postIndex := iNdEx + byteLen + postIndex := iNdEx + intStringLen if postIndex < 0 { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength } if postIndex > l { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF } - x.Code = append(x.Code[:0], dAtA[iNdEx:postIndex]...) - if x.Code == nil { - x.Code = []byte{} - } + x.Value = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -6219,27 +6261,25 @@ func (x *fastReflection_QueryCodeResponse) ProtoMethods() *protoiface.Methods { } var ( - md_QueryTxLogsRequest protoreflect.MessageDescriptor - fd_QueryTxLogsRequest_hash protoreflect.FieldDescriptor - fd_QueryTxLogsRequest_pagination protoreflect.FieldDescriptor + md_QueryCodeRequest protoreflect.MessageDescriptor + fd_QueryCodeRequest_address protoreflect.FieldDescriptor ) func init() { file_cosmos_evm_vm_v1_query_proto_init() - md_QueryTxLogsRequest = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryTxLogsRequest") - fd_QueryTxLogsRequest_hash = md_QueryTxLogsRequest.Fields().ByName("hash") - fd_QueryTxLogsRequest_pagination = md_QueryTxLogsRequest.Fields().ByName("pagination") + md_QueryCodeRequest = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryCodeRequest") + fd_QueryCodeRequest_address = md_QueryCodeRequest.Fields().ByName("address") } -var _ protoreflect.Message = (*fastReflection_QueryTxLogsRequest)(nil) +var _ protoreflect.Message = (*fastReflection_QueryCodeRequest)(nil) -type fastReflection_QueryTxLogsRequest QueryTxLogsRequest +type fastReflection_QueryCodeRequest QueryCodeRequest -func (x *QueryTxLogsRequest) ProtoReflect() protoreflect.Message { - return (*fastReflection_QueryTxLogsRequest)(x) +func (x *QueryCodeRequest) ProtoReflect() protoreflect.Message { + return (*fastReflection_QueryCodeRequest)(x) } -func (x *QueryTxLogsRequest) slowProtoReflect() protoreflect.Message { +func (x *QueryCodeRequest) slowProtoReflect() protoreflect.Message { mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -6251,43 +6291,43 @@ func (x *QueryTxLogsRequest) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_QueryTxLogsRequest_messageType fastReflection_QueryTxLogsRequest_messageType -var _ protoreflect.MessageType = fastReflection_QueryTxLogsRequest_messageType{} +var _fastReflection_QueryCodeRequest_messageType fastReflection_QueryCodeRequest_messageType +var _ protoreflect.MessageType = fastReflection_QueryCodeRequest_messageType{} -type fastReflection_QueryTxLogsRequest_messageType struct{} +type fastReflection_QueryCodeRequest_messageType struct{} -func (x fastReflection_QueryTxLogsRequest_messageType) Zero() protoreflect.Message { - return (*fastReflection_QueryTxLogsRequest)(nil) +func (x fastReflection_QueryCodeRequest_messageType) Zero() protoreflect.Message { + return (*fastReflection_QueryCodeRequest)(nil) } -func (x fastReflection_QueryTxLogsRequest_messageType) New() protoreflect.Message { - return new(fastReflection_QueryTxLogsRequest) +func (x fastReflection_QueryCodeRequest_messageType) New() protoreflect.Message { + return new(fastReflection_QueryCodeRequest) } -func (x fastReflection_QueryTxLogsRequest_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_QueryTxLogsRequest +func (x fastReflection_QueryCodeRequest_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_QueryCodeRequest } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_QueryTxLogsRequest) Descriptor() protoreflect.MessageDescriptor { - return md_QueryTxLogsRequest +func (x *fastReflection_QueryCodeRequest) Descriptor() protoreflect.MessageDescriptor { + return md_QueryCodeRequest } // Type returns the message type, which encapsulates both Go and protobuf // type information. If the Go type information is not needed, // it is recommended that the message descriptor be used instead. -func (x *fastReflection_QueryTxLogsRequest) Type() protoreflect.MessageType { - return _fastReflection_QueryTxLogsRequest_messageType +func (x *fastReflection_QueryCodeRequest) Type() protoreflect.MessageType { + return _fastReflection_QueryCodeRequest_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_QueryTxLogsRequest) New() protoreflect.Message { - return new(fastReflection_QueryTxLogsRequest) +func (x *fastReflection_QueryCodeRequest) New() protoreflect.Message { + return new(fastReflection_QueryCodeRequest) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_QueryTxLogsRequest) Interface() protoreflect.ProtoMessage { - return (*QueryTxLogsRequest)(x) +func (x *fastReflection_QueryCodeRequest) Interface() protoreflect.ProtoMessage { + return (*QueryCodeRequest)(x) } // Range iterates over every populated field in an undefined order, @@ -6295,16 +6335,10 @@ func (x *fastReflection_QueryTxLogsRequest) Interface() protoreflect.ProtoMessag // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_QueryTxLogsRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.Hash != "" { - value := protoreflect.ValueOfString(x.Hash) - if !f(fd_QueryTxLogsRequest_hash, value) { - return - } - } - if x.Pagination != nil { - value := protoreflect.ValueOfMessage(x.Pagination.ProtoReflect()) - if !f(fd_QueryTxLogsRequest_pagination, value) { +func (x *fastReflection_QueryCodeRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Address != "" { + value := protoreflect.ValueOfString(x.Address) + if !f(fd_QueryCodeRequest_address, value) { return } } @@ -6321,17 +6355,15 @@ func (x *fastReflection_QueryTxLogsRequest) Range(f func(protoreflect.FieldDescr // In other cases (aside from the nullable cases above), // a proto3 scalar field is populated if it contains a non-zero value, and // a repeated field is populated if it is non-empty. -func (x *fastReflection_QueryTxLogsRequest) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_QueryCodeRequest) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryTxLogsRequest.hash": - return x.Hash != "" - case "cosmos.evm.vm.v1.QueryTxLogsRequest.pagination": - return x.Pagination != nil + case "cosmos.evm.vm.v1.QueryCodeRequest.address": + return x.Address != "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeRequest does not contain field %s", fd.FullName())) } } @@ -6341,17 +6373,15 @@ func (x *fastReflection_QueryTxLogsRequest) Has(fd protoreflect.FieldDescriptor) // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryTxLogsRequest) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_QueryCodeRequest) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryTxLogsRequest.hash": - x.Hash = "" - case "cosmos.evm.vm.v1.QueryTxLogsRequest.pagination": - x.Pagination = nil + case "cosmos.evm.vm.v1.QueryCodeRequest.address": + x.Address = "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeRequest does not contain field %s", fd.FullName())) } } @@ -6361,19 +6391,16 @@ func (x *fastReflection_QueryTxLogsRequest) Clear(fd protoreflect.FieldDescripto // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_QueryTxLogsRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryCodeRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "cosmos.evm.vm.v1.QueryTxLogsRequest.hash": - value := x.Hash + case "cosmos.evm.vm.v1.QueryCodeRequest.address": + value := x.Address return protoreflect.ValueOfString(value) - case "cosmos.evm.vm.v1.QueryTxLogsRequest.pagination": - value := x.Pagination - return protoreflect.ValueOfMessage(value.ProtoReflect()) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsRequest does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeRequest does not contain field %s", descriptor.FullName())) } } @@ -6387,17 +6414,15 @@ func (x *fastReflection_QueryTxLogsRequest) Get(descriptor protoreflect.FieldDes // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryTxLogsRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_QueryCodeRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryTxLogsRequest.hash": - x.Hash = value.Interface().(string) - case "cosmos.evm.vm.v1.QueryTxLogsRequest.pagination": - x.Pagination = value.Message().Interface().(*v1beta1.PageRequest) + case "cosmos.evm.vm.v1.QueryCodeRequest.address": + x.Address = value.Interface().(string) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeRequest does not contain field %s", fd.FullName())) } } @@ -6411,48 +6436,40 @@ func (x *fastReflection_QueryTxLogsRequest) Set(fd protoreflect.FieldDescriptor, // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryTxLogsRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryCodeRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryTxLogsRequest.pagination": - if x.Pagination == nil { - x.Pagination = new(v1beta1.PageRequest) - } - return protoreflect.ValueOfMessage(x.Pagination.ProtoReflect()) - case "cosmos.evm.vm.v1.QueryTxLogsRequest.hash": - panic(fmt.Errorf("field hash of message cosmos.evm.vm.v1.QueryTxLogsRequest is not mutable")) + case "cosmos.evm.vm.v1.QueryCodeRequest.address": + panic(fmt.Errorf("field address of message cosmos.evm.vm.v1.QueryCodeRequest is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeRequest does not contain field %s", fd.FullName())) } } // NewField returns a new value that is assignable to the field // for the given descriptor. For scalars, this returns the default value. // For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_QueryTxLogsRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryCodeRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryTxLogsRequest.hash": + case "cosmos.evm.vm.v1.QueryCodeRequest.address": return protoreflect.ValueOfString("") - case "cosmos.evm.vm.v1.QueryTxLogsRequest.pagination": - m := new(v1beta1.PageRequest) - return protoreflect.ValueOfMessage(m.ProtoReflect()) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeRequest")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeRequest does not contain field %s", fd.FullName())) } } // WhichOneof reports which field within the oneof is populated, // returning nil if none are populated. // It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_QueryTxLogsRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_QueryCodeRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryTxLogsRequest", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryCodeRequest", d.FullName())) } panic("unreachable") } @@ -6460,7 +6477,7 @@ func (x *fastReflection_QueryTxLogsRequest) WhichOneof(d protoreflect.OneofDescr // GetUnknown retrieves the entire list of unknown fields. // The caller may only mutate the contents of the RawFields // if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_QueryTxLogsRequest) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_QueryCodeRequest) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -6471,7 +6488,7 @@ func (x *fastReflection_QueryTxLogsRequest) GetUnknown() protoreflect.RawFields // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryTxLogsRequest) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_QueryCodeRequest) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -6483,7 +6500,7 @@ func (x *fastReflection_QueryTxLogsRequest) SetUnknown(fields protoreflect.RawFi // message type, but the details are implementation dependent. // Validity is not part of the protobuf data model, and may not // be preserved in marshaling or other operations. -func (x *fastReflection_QueryTxLogsRequest) IsValid() bool { +func (x *fastReflection_QueryCodeRequest) IsValid() bool { return x != nil } @@ -6493,9 +6510,9 @@ func (x *fastReflection_QueryTxLogsRequest) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_QueryTxLogsRequest) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_QueryCodeRequest) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*QueryTxLogsRequest) + x := input.Message.Interface().(*QueryCodeRequest) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -6507,14 +6524,10 @@ func (x *fastReflection_QueryTxLogsRequest) ProtoMethods() *protoiface.Methods { var n int var l int _ = l - l = len(x.Hash) + l = len(x.Address) if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } - if x.Pagination != nil { - l = options.Size(x.Pagination) - n += 1 + l + runtime.Sov(uint64(l)) - } if x.unknownFields != nil { n += len(x.unknownFields) } @@ -6525,7 +6538,7 @@ func (x *fastReflection_QueryTxLogsRequest) ProtoMethods() *protoiface.Methods { } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*QueryTxLogsRequest) + x := input.Message.Interface().(*QueryCodeRequest) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -6544,24 +6557,10 @@ func (x *fastReflection_QueryTxLogsRequest) ProtoMethods() *protoiface.Methods { i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } - if x.Pagination != nil { - encoded, err := options.Marshal(x.Pagination) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err - } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) - i-- - dAtA[i] = 0x12 - } - if len(x.Hash) > 0 { - i -= len(x.Hash) - copy(dAtA[i:], x.Hash) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Hash))) + if len(x.Address) > 0 { + i -= len(x.Address) + copy(dAtA[i:], x.Address) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Address))) i-- dAtA[i] = 0xa } @@ -6576,7 +6575,7 @@ func (x *fastReflection_QueryTxLogsRequest) ProtoMethods() *protoiface.Methods { }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*QueryTxLogsRequest) + x := input.Message.Interface().(*QueryCodeRequest) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -6608,15 +6607,15 @@ func (x *fastReflection_QueryTxLogsRequest) ProtoMethods() *protoiface.Methods { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryTxLogsRequest: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryCodeRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryTxLogsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryCodeRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Hash", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -6644,43 +6643,7 @@ func (x *fastReflection_QueryTxLogsRequest) ProtoMethods() *protoiface.Methods { if postIndex > l { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF } - x.Hash = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Pagination", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow - } - if iNdEx >= l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if x.Pagination == nil { - x.Pagination = &v1beta1.PageRequest{} - } - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Pagination); err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } + x.Address = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -6717,79 +6680,26 @@ func (x *fastReflection_QueryTxLogsRequest) ProtoMethods() *protoiface.Methods { } } -var _ protoreflect.List = (*_QueryTxLogsResponse_1_list)(nil) - -type _QueryTxLogsResponse_1_list struct { - list *[]*Log -} - -func (x *_QueryTxLogsResponse_1_list) Len() int { - if x.list == nil { - return 0 - } - return len(*x.list) -} - -func (x *_QueryTxLogsResponse_1_list) Get(i int) protoreflect.Value { - return protoreflect.ValueOfMessage((*x.list)[i].ProtoReflect()) -} - -func (x *_QueryTxLogsResponse_1_list) Set(i int, value protoreflect.Value) { - valueUnwrapped := value.Message() - concreteValue := valueUnwrapped.Interface().(*Log) - (*x.list)[i] = concreteValue -} - -func (x *_QueryTxLogsResponse_1_list) Append(value protoreflect.Value) { - valueUnwrapped := value.Message() - concreteValue := valueUnwrapped.Interface().(*Log) - *x.list = append(*x.list, concreteValue) -} - -func (x *_QueryTxLogsResponse_1_list) AppendMutable() protoreflect.Value { - v := new(Log) - *x.list = append(*x.list, v) - return protoreflect.ValueOfMessage(v.ProtoReflect()) -} - -func (x *_QueryTxLogsResponse_1_list) Truncate(n int) { - for i := n; i < len(*x.list); i++ { - (*x.list)[i] = nil - } - *x.list = (*x.list)[:n] -} - -func (x *_QueryTxLogsResponse_1_list) NewElement() protoreflect.Value { - v := new(Log) - return protoreflect.ValueOfMessage(v.ProtoReflect()) -} - -func (x *_QueryTxLogsResponse_1_list) IsValid() bool { - return x.list != nil -} - var ( - md_QueryTxLogsResponse protoreflect.MessageDescriptor - fd_QueryTxLogsResponse_logs protoreflect.FieldDescriptor - fd_QueryTxLogsResponse_pagination protoreflect.FieldDescriptor + md_QueryCodeResponse protoreflect.MessageDescriptor + fd_QueryCodeResponse_code protoreflect.FieldDescriptor ) func init() { file_cosmos_evm_vm_v1_query_proto_init() - md_QueryTxLogsResponse = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryTxLogsResponse") - fd_QueryTxLogsResponse_logs = md_QueryTxLogsResponse.Fields().ByName("logs") - fd_QueryTxLogsResponse_pagination = md_QueryTxLogsResponse.Fields().ByName("pagination") + md_QueryCodeResponse = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryCodeResponse") + fd_QueryCodeResponse_code = md_QueryCodeResponse.Fields().ByName("code") } -var _ protoreflect.Message = (*fastReflection_QueryTxLogsResponse)(nil) +var _ protoreflect.Message = (*fastReflection_QueryCodeResponse)(nil) -type fastReflection_QueryTxLogsResponse QueryTxLogsResponse +type fastReflection_QueryCodeResponse QueryCodeResponse -func (x *QueryTxLogsResponse) ProtoReflect() protoreflect.Message { - return (*fastReflection_QueryTxLogsResponse)(x) +func (x *QueryCodeResponse) ProtoReflect() protoreflect.Message { + return (*fastReflection_QueryCodeResponse)(x) } -func (x *QueryTxLogsResponse) slowProtoReflect() protoreflect.Message { +func (x *QueryCodeResponse) slowProtoReflect() protoreflect.Message { mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -6801,43 +6711,1893 @@ func (x *QueryTxLogsResponse) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_QueryTxLogsResponse_messageType fastReflection_QueryTxLogsResponse_messageType -var _ protoreflect.MessageType = fastReflection_QueryTxLogsResponse_messageType{} +var _fastReflection_QueryCodeResponse_messageType fastReflection_QueryCodeResponse_messageType +var _ protoreflect.MessageType = fastReflection_QueryCodeResponse_messageType{} -type fastReflection_QueryTxLogsResponse_messageType struct{} +type fastReflection_QueryCodeResponse_messageType struct{} -func (x fastReflection_QueryTxLogsResponse_messageType) Zero() protoreflect.Message { - return (*fastReflection_QueryTxLogsResponse)(nil) +func (x fastReflection_QueryCodeResponse_messageType) Zero() protoreflect.Message { + return (*fastReflection_QueryCodeResponse)(nil) } -func (x fastReflection_QueryTxLogsResponse_messageType) New() protoreflect.Message { - return new(fastReflection_QueryTxLogsResponse) +func (x fastReflection_QueryCodeResponse_messageType) New() protoreflect.Message { + return new(fastReflection_QueryCodeResponse) } -func (x fastReflection_QueryTxLogsResponse_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_QueryTxLogsResponse +func (x fastReflection_QueryCodeResponse_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_QueryCodeResponse } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_QueryTxLogsResponse) Descriptor() protoreflect.MessageDescriptor { - return md_QueryTxLogsResponse +func (x *fastReflection_QueryCodeResponse) Descriptor() protoreflect.MessageDescriptor { + return md_QueryCodeResponse } // Type returns the message type, which encapsulates both Go and protobuf // type information. If the Go type information is not needed, // it is recommended that the message descriptor be used instead. -func (x *fastReflection_QueryTxLogsResponse) Type() protoreflect.MessageType { - return _fastReflection_QueryTxLogsResponse_messageType +func (x *fastReflection_QueryCodeResponse) Type() protoreflect.MessageType { + return _fastReflection_QueryCodeResponse_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_QueryTxLogsResponse) New() protoreflect.Message { - return new(fastReflection_QueryTxLogsResponse) +func (x *fastReflection_QueryCodeResponse) New() protoreflect.Message { + return new(fastReflection_QueryCodeResponse) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_QueryCodeResponse) Interface() protoreflect.ProtoMessage { + return (*QueryCodeResponse)(x) +} + +// Range iterates over every populated field in an undefined order, +// calling f for each field descriptor and value encountered. +// Range returns immediately if f returns false. +// While iterating, mutating operations may only be performed +// on the current field descriptor. +func (x *fastReflection_QueryCodeResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if len(x.Code) != 0 { + value := protoreflect.ValueOfBytes(x.Code) + if !f(fd_QueryCodeResponse_code, value) { + return + } + } +} + +// Has reports whether a field is populated. +// +// Some fields have the property of nullability where it is possible to +// distinguish between the default value of a field and whether the field +// was explicitly populated with the default value. Singular message fields, +// member fields of a oneof, and proto2 scalar fields are nullable. Such +// fields are populated only if explicitly set. +// +// In other cases (aside from the nullable cases above), +// a proto3 scalar field is populated if it contains a non-zero value, and +// a repeated field is populated if it is non-empty. +func (x *fastReflection_QueryCodeResponse) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "cosmos.evm.vm.v1.QueryCodeResponse.code": + return len(x.Code) != 0 + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeResponse")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeResponse does not contain field %s", fd.FullName())) + } +} + +// Clear clears the field such that a subsequent Has call reports false. +// +// Clearing an extension field clears both the extension type and value +// associated with the given field number. +// +// Clear is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_QueryCodeResponse) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "cosmos.evm.vm.v1.QueryCodeResponse.code": + x.Code = nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeResponse")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeResponse does not contain field %s", fd.FullName())) + } +} + +// Get retrieves the value for a field. +// +// For unpopulated scalars, it returns the default value, where +// the default value of a bytes scalar is guaranteed to be a copy. +// For unpopulated composite types, it returns an empty, read-only view +// of the value; to obtain a mutable reference, use Mutable. +func (x *fastReflection_QueryCodeResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "cosmos.evm.vm.v1.QueryCodeResponse.code": + value := x.Code + return protoreflect.ValueOfBytes(value) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeResponse")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeResponse does not contain field %s", descriptor.FullName())) + } +} + +// Set stores the value for a field. +// +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType. +// When setting a composite type, it is unspecified whether the stored value +// aliases the source's memory in any way. If the composite value is an +// empty, read-only value, then it panics. +// +// Set is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_QueryCodeResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "cosmos.evm.vm.v1.QueryCodeResponse.code": + x.Code = value.Bytes() + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeResponse")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeResponse does not contain field %s", fd.FullName())) + } +} + +// Mutable returns a mutable reference to a composite type. +// +// If the field is unpopulated, it may allocate a composite value. +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType +// if not already stored. +// It panics if the field does not contain a composite type. +// +// Mutable is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_QueryCodeResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "cosmos.evm.vm.v1.QueryCodeResponse.code": + panic(fmt.Errorf("field code of message cosmos.evm.vm.v1.QueryCodeResponse is not mutable")) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeResponse")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeResponse does not contain field %s", fd.FullName())) + } +} + +// NewField returns a new value that is assignable to the field +// for the given descriptor. For scalars, this returns the default value. +// For lists, maps, and messages, this returns a new, empty, mutable value. +func (x *fastReflection_QueryCodeResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "cosmos.evm.vm.v1.QueryCodeResponse.code": + return protoreflect.ValueOfBytes(nil) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryCodeResponse")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryCodeResponse does not contain field %s", fd.FullName())) + } +} + +// WhichOneof reports which field within the oneof is populated, +// returning nil if none are populated. +// It panics if the oneof descriptor does not belong to this message. +func (x *fastReflection_QueryCodeResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryCodeResponse", d.FullName())) + } + panic("unreachable") +} + +// GetUnknown retrieves the entire list of unknown fields. +// The caller may only mutate the contents of the RawFields +// if the mutated bytes are stored back into the message with SetUnknown. +func (x *fastReflection_QueryCodeResponse) GetUnknown() protoreflect.RawFields { + return x.unknownFields +} + +// SetUnknown stores an entire list of unknown fields. +// The raw fields must be syntactically valid according to the wire format. +// An implementation may panic if this is not the case. +// Once stored, the caller must not mutate the content of the RawFields. +// An empty RawFields may be passed to clear the fields. +// +// SetUnknown is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_QueryCodeResponse) SetUnknown(fields protoreflect.RawFields) { + x.unknownFields = fields +} + +// IsValid reports whether the message is valid. +// +// An invalid message is an empty, read-only value. +// +// An invalid message often corresponds to a nil pointer of the concrete +// message type, but the details are implementation dependent. +// Validity is not part of the protobuf data model, and may not +// be preserved in marshaling or other operations. +func (x *fastReflection_QueryCodeResponse) IsValid() bool { + return x != nil +} + +// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. +// This method may return nil. +// +// The returned methods type is identical to +// "google.golang.org/protobuf/runtime/protoiface".Methods. +// Consult the protoiface package documentation for details. +func (x *fastReflection_QueryCodeResponse) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*QueryCodeResponse) + if x == nil { + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: 0, + } + } + options := runtime.SizeInputToOptions(input) + _ = options + var n int + var l int + _ = l + l = len(x.Code) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*QueryCodeResponse) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if len(x.Code) > 0 { + i -= len(x.Code) + copy(dAtA[i:], x.Code) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Code))) + i-- + dAtA[i] = 0xa + } + if input.Buf != nil { + input.Buf = append(input.Buf, dAtA...) + } else { + input.Buf = dAtA + } + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { + x := input.Message.Interface().(*QueryCodeResponse) + if x == nil { + return protoiface.UnmarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Flags: input.Flags, + }, nil + } + options := runtime.UnmarshalInputToOptions(input) + _ = options + dAtA := input.Buf + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryCodeResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryCodeResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Code", wireType) + } + var byteLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + byteLen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if byteLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + byteLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.Code = append(x.Code[:0], dAtA[iNdEx:postIndex]...) + if x.Code == nil { + x.Code = []byte{} + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var ( + md_QueryTxLogsRequest protoreflect.MessageDescriptor + fd_QueryTxLogsRequest_hash protoreflect.FieldDescriptor + fd_QueryTxLogsRequest_pagination protoreflect.FieldDescriptor +) + +func init() { + file_cosmos_evm_vm_v1_query_proto_init() + md_QueryTxLogsRequest = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryTxLogsRequest") + fd_QueryTxLogsRequest_hash = md_QueryTxLogsRequest.Fields().ByName("hash") + fd_QueryTxLogsRequest_pagination = md_QueryTxLogsRequest.Fields().ByName("pagination") +} + +var _ protoreflect.Message = (*fastReflection_QueryTxLogsRequest)(nil) + +type fastReflection_QueryTxLogsRequest QueryTxLogsRequest + +func (x *QueryTxLogsRequest) ProtoReflect() protoreflect.Message { + return (*fastReflection_QueryTxLogsRequest)(x) +} + +func (x *QueryTxLogsRequest) slowProtoReflect() protoreflect.Message { + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[16] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +var _fastReflection_QueryTxLogsRequest_messageType fastReflection_QueryTxLogsRequest_messageType +var _ protoreflect.MessageType = fastReflection_QueryTxLogsRequest_messageType{} + +type fastReflection_QueryTxLogsRequest_messageType struct{} + +func (x fastReflection_QueryTxLogsRequest_messageType) Zero() protoreflect.Message { + return (*fastReflection_QueryTxLogsRequest)(nil) +} +func (x fastReflection_QueryTxLogsRequest_messageType) New() protoreflect.Message { + return new(fastReflection_QueryTxLogsRequest) +} +func (x fastReflection_QueryTxLogsRequest_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_QueryTxLogsRequest +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_QueryTxLogsRequest) Descriptor() protoreflect.MessageDescriptor { + return md_QueryTxLogsRequest +} + +// Type returns the message type, which encapsulates both Go and protobuf +// type information. If the Go type information is not needed, +// it is recommended that the message descriptor be used instead. +func (x *fastReflection_QueryTxLogsRequest) Type() protoreflect.MessageType { + return _fastReflection_QueryTxLogsRequest_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_QueryTxLogsRequest) New() protoreflect.Message { + return new(fastReflection_QueryTxLogsRequest) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_QueryTxLogsRequest) Interface() protoreflect.ProtoMessage { + return (*QueryTxLogsRequest)(x) +} + +// Range iterates over every populated field in an undefined order, +// calling f for each field descriptor and value encountered. +// Range returns immediately if f returns false. +// While iterating, mutating operations may only be performed +// on the current field descriptor. +func (x *fastReflection_QueryTxLogsRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Hash != "" { + value := protoreflect.ValueOfString(x.Hash) + if !f(fd_QueryTxLogsRequest_hash, value) { + return + } + } + if x.Pagination != nil { + value := protoreflect.ValueOfMessage(x.Pagination.ProtoReflect()) + if !f(fd_QueryTxLogsRequest_pagination, value) { + return + } + } +} + +// Has reports whether a field is populated. +// +// Some fields have the property of nullability where it is possible to +// distinguish between the default value of a field and whether the field +// was explicitly populated with the default value. Singular message fields, +// member fields of a oneof, and proto2 scalar fields are nullable. Such +// fields are populated only if explicitly set. +// +// In other cases (aside from the nullable cases above), +// a proto3 scalar field is populated if it contains a non-zero value, and +// a repeated field is populated if it is non-empty. +func (x *fastReflection_QueryTxLogsRequest) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "cosmos.evm.vm.v1.QueryTxLogsRequest.hash": + return x.Hash != "" + case "cosmos.evm.vm.v1.QueryTxLogsRequest.pagination": + return x.Pagination != nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsRequest")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsRequest does not contain field %s", fd.FullName())) + } +} + +// Clear clears the field such that a subsequent Has call reports false. +// +// Clearing an extension field clears both the extension type and value +// associated with the given field number. +// +// Clear is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_QueryTxLogsRequest) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "cosmos.evm.vm.v1.QueryTxLogsRequest.hash": + x.Hash = "" + case "cosmos.evm.vm.v1.QueryTxLogsRequest.pagination": + x.Pagination = nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsRequest")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsRequest does not contain field %s", fd.FullName())) + } +} + +// Get retrieves the value for a field. +// +// For unpopulated scalars, it returns the default value, where +// the default value of a bytes scalar is guaranteed to be a copy. +// For unpopulated composite types, it returns an empty, read-only view +// of the value; to obtain a mutable reference, use Mutable. +func (x *fastReflection_QueryTxLogsRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "cosmos.evm.vm.v1.QueryTxLogsRequest.hash": + value := x.Hash + return protoreflect.ValueOfString(value) + case "cosmos.evm.vm.v1.QueryTxLogsRequest.pagination": + value := x.Pagination + return protoreflect.ValueOfMessage(value.ProtoReflect()) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsRequest")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsRequest does not contain field %s", descriptor.FullName())) + } +} + +// Set stores the value for a field. +// +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType. +// When setting a composite type, it is unspecified whether the stored value +// aliases the source's memory in any way. If the composite value is an +// empty, read-only value, then it panics. +// +// Set is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_QueryTxLogsRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "cosmos.evm.vm.v1.QueryTxLogsRequest.hash": + x.Hash = value.Interface().(string) + case "cosmos.evm.vm.v1.QueryTxLogsRequest.pagination": + x.Pagination = value.Message().Interface().(*v1beta1.PageRequest) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsRequest")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsRequest does not contain field %s", fd.FullName())) + } +} + +// Mutable returns a mutable reference to a composite type. +// +// If the field is unpopulated, it may allocate a composite value. +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType +// if not already stored. +// It panics if the field does not contain a composite type. +// +// Mutable is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_QueryTxLogsRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "cosmos.evm.vm.v1.QueryTxLogsRequest.pagination": + if x.Pagination == nil { + x.Pagination = new(v1beta1.PageRequest) + } + return protoreflect.ValueOfMessage(x.Pagination.ProtoReflect()) + case "cosmos.evm.vm.v1.QueryTxLogsRequest.hash": + panic(fmt.Errorf("field hash of message cosmos.evm.vm.v1.QueryTxLogsRequest is not mutable")) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsRequest")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsRequest does not contain field %s", fd.FullName())) + } +} + +// NewField returns a new value that is assignable to the field +// for the given descriptor. For scalars, this returns the default value. +// For lists, maps, and messages, this returns a new, empty, mutable value. +func (x *fastReflection_QueryTxLogsRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "cosmos.evm.vm.v1.QueryTxLogsRequest.hash": + return protoreflect.ValueOfString("") + case "cosmos.evm.vm.v1.QueryTxLogsRequest.pagination": + m := new(v1beta1.PageRequest) + return protoreflect.ValueOfMessage(m.ProtoReflect()) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsRequest")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsRequest does not contain field %s", fd.FullName())) + } +} + +// WhichOneof reports which field within the oneof is populated, +// returning nil if none are populated. +// It panics if the oneof descriptor does not belong to this message. +func (x *fastReflection_QueryTxLogsRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryTxLogsRequest", d.FullName())) + } + panic("unreachable") +} + +// GetUnknown retrieves the entire list of unknown fields. +// The caller may only mutate the contents of the RawFields +// if the mutated bytes are stored back into the message with SetUnknown. +func (x *fastReflection_QueryTxLogsRequest) GetUnknown() protoreflect.RawFields { + return x.unknownFields +} + +// SetUnknown stores an entire list of unknown fields. +// The raw fields must be syntactically valid according to the wire format. +// An implementation may panic if this is not the case. +// Once stored, the caller must not mutate the content of the RawFields. +// An empty RawFields may be passed to clear the fields. +// +// SetUnknown is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_QueryTxLogsRequest) SetUnknown(fields protoreflect.RawFields) { + x.unknownFields = fields +} + +// IsValid reports whether the message is valid. +// +// An invalid message is an empty, read-only value. +// +// An invalid message often corresponds to a nil pointer of the concrete +// message type, but the details are implementation dependent. +// Validity is not part of the protobuf data model, and may not +// be preserved in marshaling or other operations. +func (x *fastReflection_QueryTxLogsRequest) IsValid() bool { + return x != nil +} + +// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. +// This method may return nil. +// +// The returned methods type is identical to +// "google.golang.org/protobuf/runtime/protoiface".Methods. +// Consult the protoiface package documentation for details. +func (x *fastReflection_QueryTxLogsRequest) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*QueryTxLogsRequest) + if x == nil { + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: 0, + } + } + options := runtime.SizeInputToOptions(input) + _ = options + var n int + var l int + _ = l + l = len(x.Hash) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.Pagination != nil { + l = options.Size(x.Pagination) + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*QueryTxLogsRequest) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if x.Pagination != nil { + encoded, err := options.Marshal(x.Pagination) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x12 + } + if len(x.Hash) > 0 { + i -= len(x.Hash) + copy(dAtA[i:], x.Hash) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Hash))) + i-- + dAtA[i] = 0xa + } + if input.Buf != nil { + input.Buf = append(input.Buf, dAtA...) + } else { + input.Buf = dAtA + } + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { + x := input.Message.Interface().(*QueryTxLogsRequest) + if x == nil { + return protoiface.UnmarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Flags: input.Flags, + }, nil + } + options := runtime.UnmarshalInputToOptions(input) + _ = options + dAtA := input.Buf + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryTxLogsRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryTxLogsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Hash", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.Hash = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Pagination", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if x.Pagination == nil { + x.Pagination = &v1beta1.PageRequest{} + } + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Pagination); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var _ protoreflect.List = (*_QueryTxLogsResponse_1_list)(nil) + +type _QueryTxLogsResponse_1_list struct { + list *[]*Log +} + +func (x *_QueryTxLogsResponse_1_list) Len() int { + if x.list == nil { + return 0 + } + return len(*x.list) +} + +func (x *_QueryTxLogsResponse_1_list) Get(i int) protoreflect.Value { + return protoreflect.ValueOfMessage((*x.list)[i].ProtoReflect()) +} + +func (x *_QueryTxLogsResponse_1_list) Set(i int, value protoreflect.Value) { + valueUnwrapped := value.Message() + concreteValue := valueUnwrapped.Interface().(*Log) + (*x.list)[i] = concreteValue +} + +func (x *_QueryTxLogsResponse_1_list) Append(value protoreflect.Value) { + valueUnwrapped := value.Message() + concreteValue := valueUnwrapped.Interface().(*Log) + *x.list = append(*x.list, concreteValue) +} + +func (x *_QueryTxLogsResponse_1_list) AppendMutable() protoreflect.Value { + v := new(Log) + *x.list = append(*x.list, v) + return protoreflect.ValueOfMessage(v.ProtoReflect()) +} + +func (x *_QueryTxLogsResponse_1_list) Truncate(n int) { + for i := n; i < len(*x.list); i++ { + (*x.list)[i] = nil + } + *x.list = (*x.list)[:n] +} + +func (x *_QueryTxLogsResponse_1_list) NewElement() protoreflect.Value { + v := new(Log) + return protoreflect.ValueOfMessage(v.ProtoReflect()) +} + +func (x *_QueryTxLogsResponse_1_list) IsValid() bool { + return x.list != nil +} + +var ( + md_QueryTxLogsResponse protoreflect.MessageDescriptor + fd_QueryTxLogsResponse_logs protoreflect.FieldDescriptor + fd_QueryTxLogsResponse_pagination protoreflect.FieldDescriptor +) + +func init() { + file_cosmos_evm_vm_v1_query_proto_init() + md_QueryTxLogsResponse = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryTxLogsResponse") + fd_QueryTxLogsResponse_logs = md_QueryTxLogsResponse.Fields().ByName("logs") + fd_QueryTxLogsResponse_pagination = md_QueryTxLogsResponse.Fields().ByName("pagination") +} + +var _ protoreflect.Message = (*fastReflection_QueryTxLogsResponse)(nil) + +type fastReflection_QueryTxLogsResponse QueryTxLogsResponse + +func (x *QueryTxLogsResponse) ProtoReflect() protoreflect.Message { + return (*fastReflection_QueryTxLogsResponse)(x) +} + +func (x *QueryTxLogsResponse) slowProtoReflect() protoreflect.Message { + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[17] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +var _fastReflection_QueryTxLogsResponse_messageType fastReflection_QueryTxLogsResponse_messageType +var _ protoreflect.MessageType = fastReflection_QueryTxLogsResponse_messageType{} + +type fastReflection_QueryTxLogsResponse_messageType struct{} + +func (x fastReflection_QueryTxLogsResponse_messageType) Zero() protoreflect.Message { + return (*fastReflection_QueryTxLogsResponse)(nil) +} +func (x fastReflection_QueryTxLogsResponse_messageType) New() protoreflect.Message { + return new(fastReflection_QueryTxLogsResponse) +} +func (x fastReflection_QueryTxLogsResponse_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_QueryTxLogsResponse +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_QueryTxLogsResponse) Descriptor() protoreflect.MessageDescriptor { + return md_QueryTxLogsResponse +} + +// Type returns the message type, which encapsulates both Go and protobuf +// type information. If the Go type information is not needed, +// it is recommended that the message descriptor be used instead. +func (x *fastReflection_QueryTxLogsResponse) Type() protoreflect.MessageType { + return _fastReflection_QueryTxLogsResponse_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_QueryTxLogsResponse) New() protoreflect.Message { + return new(fastReflection_QueryTxLogsResponse) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_QueryTxLogsResponse) Interface() protoreflect.ProtoMessage { + return (*QueryTxLogsResponse)(x) +} + +// Range iterates over every populated field in an undefined order, +// calling f for each field descriptor and value encountered. +// Range returns immediately if f returns false. +// While iterating, mutating operations may only be performed +// on the current field descriptor. +func (x *fastReflection_QueryTxLogsResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if len(x.Logs) != 0 { + value := protoreflect.ValueOfList(&_QueryTxLogsResponse_1_list{list: &x.Logs}) + if !f(fd_QueryTxLogsResponse_logs, value) { + return + } + } + if x.Pagination != nil { + value := protoreflect.ValueOfMessage(x.Pagination.ProtoReflect()) + if !f(fd_QueryTxLogsResponse_pagination, value) { + return + } + } +} + +// Has reports whether a field is populated. +// +// Some fields have the property of nullability where it is possible to +// distinguish between the default value of a field and whether the field +// was explicitly populated with the default value. Singular message fields, +// member fields of a oneof, and proto2 scalar fields are nullable. Such +// fields are populated only if explicitly set. +// +// In other cases (aside from the nullable cases above), +// a proto3 scalar field is populated if it contains a non-zero value, and +// a repeated field is populated if it is non-empty. +func (x *fastReflection_QueryTxLogsResponse) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "cosmos.evm.vm.v1.QueryTxLogsResponse.logs": + return len(x.Logs) != 0 + case "cosmos.evm.vm.v1.QueryTxLogsResponse.pagination": + return x.Pagination != nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsResponse")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsResponse does not contain field %s", fd.FullName())) + } +} + +// Clear clears the field such that a subsequent Has call reports false. +// +// Clearing an extension field clears both the extension type and value +// associated with the given field number. +// +// Clear is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_QueryTxLogsResponse) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "cosmos.evm.vm.v1.QueryTxLogsResponse.logs": + x.Logs = nil + case "cosmos.evm.vm.v1.QueryTxLogsResponse.pagination": + x.Pagination = nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsResponse")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsResponse does not contain field %s", fd.FullName())) + } +} + +// Get retrieves the value for a field. +// +// For unpopulated scalars, it returns the default value, where +// the default value of a bytes scalar is guaranteed to be a copy. +// For unpopulated composite types, it returns an empty, read-only view +// of the value; to obtain a mutable reference, use Mutable. +func (x *fastReflection_QueryTxLogsResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "cosmos.evm.vm.v1.QueryTxLogsResponse.logs": + if len(x.Logs) == 0 { + return protoreflect.ValueOfList(&_QueryTxLogsResponse_1_list{}) + } + listValue := &_QueryTxLogsResponse_1_list{list: &x.Logs} + return protoreflect.ValueOfList(listValue) + case "cosmos.evm.vm.v1.QueryTxLogsResponse.pagination": + value := x.Pagination + return protoreflect.ValueOfMessage(value.ProtoReflect()) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsResponse")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsResponse does not contain field %s", descriptor.FullName())) + } +} + +// Set stores the value for a field. +// +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType. +// When setting a composite type, it is unspecified whether the stored value +// aliases the source's memory in any way. If the composite value is an +// empty, read-only value, then it panics. +// +// Set is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_QueryTxLogsResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "cosmos.evm.vm.v1.QueryTxLogsResponse.logs": + lv := value.List() + clv := lv.(*_QueryTxLogsResponse_1_list) + x.Logs = *clv.list + case "cosmos.evm.vm.v1.QueryTxLogsResponse.pagination": + x.Pagination = value.Message().Interface().(*v1beta1.PageResponse) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsResponse")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsResponse does not contain field %s", fd.FullName())) + } +} + +// Mutable returns a mutable reference to a composite type. +// +// If the field is unpopulated, it may allocate a composite value. +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType +// if not already stored. +// It panics if the field does not contain a composite type. +// +// Mutable is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_QueryTxLogsResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "cosmos.evm.vm.v1.QueryTxLogsResponse.logs": + if x.Logs == nil { + x.Logs = []*Log{} + } + value := &_QueryTxLogsResponse_1_list{list: &x.Logs} + return protoreflect.ValueOfList(value) + case "cosmos.evm.vm.v1.QueryTxLogsResponse.pagination": + if x.Pagination == nil { + x.Pagination = new(v1beta1.PageResponse) + } + return protoreflect.ValueOfMessage(x.Pagination.ProtoReflect()) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsResponse")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsResponse does not contain field %s", fd.FullName())) + } +} + +// NewField returns a new value that is assignable to the field +// for the given descriptor. For scalars, this returns the default value. +// For lists, maps, and messages, this returns a new, empty, mutable value. +func (x *fastReflection_QueryTxLogsResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "cosmos.evm.vm.v1.QueryTxLogsResponse.logs": + list := []*Log{} + return protoreflect.ValueOfList(&_QueryTxLogsResponse_1_list{list: &list}) + case "cosmos.evm.vm.v1.QueryTxLogsResponse.pagination": + m := new(v1beta1.PageResponse) + return protoreflect.ValueOfMessage(m.ProtoReflect()) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsResponse")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsResponse does not contain field %s", fd.FullName())) + } +} + +// WhichOneof reports which field within the oneof is populated, +// returning nil if none are populated. +// It panics if the oneof descriptor does not belong to this message. +func (x *fastReflection_QueryTxLogsResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryTxLogsResponse", d.FullName())) + } + panic("unreachable") +} + +// GetUnknown retrieves the entire list of unknown fields. +// The caller may only mutate the contents of the RawFields +// if the mutated bytes are stored back into the message with SetUnknown. +func (x *fastReflection_QueryTxLogsResponse) GetUnknown() protoreflect.RawFields { + return x.unknownFields +} + +// SetUnknown stores an entire list of unknown fields. +// The raw fields must be syntactically valid according to the wire format. +// An implementation may panic if this is not the case. +// Once stored, the caller must not mutate the content of the RawFields. +// An empty RawFields may be passed to clear the fields. +// +// SetUnknown is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_QueryTxLogsResponse) SetUnknown(fields protoreflect.RawFields) { + x.unknownFields = fields +} + +// IsValid reports whether the message is valid. +// +// An invalid message is an empty, read-only value. +// +// An invalid message often corresponds to a nil pointer of the concrete +// message type, but the details are implementation dependent. +// Validity is not part of the protobuf data model, and may not +// be preserved in marshaling or other operations. +func (x *fastReflection_QueryTxLogsResponse) IsValid() bool { + return x != nil +} + +// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. +// This method may return nil. +// +// The returned methods type is identical to +// "google.golang.org/protobuf/runtime/protoiface".Methods. +// Consult the protoiface package documentation for details. +func (x *fastReflection_QueryTxLogsResponse) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*QueryTxLogsResponse) + if x == nil { + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: 0, + } + } + options := runtime.SizeInputToOptions(input) + _ = options + var n int + var l int + _ = l + if len(x.Logs) > 0 { + for _, e := range x.Logs { + l = options.Size(e) + n += 1 + l + runtime.Sov(uint64(l)) + } + } + if x.Pagination != nil { + l = options.Size(x.Pagination) + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*QueryTxLogsResponse) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if x.Pagination != nil { + encoded, err := options.Marshal(x.Pagination) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x12 + } + if len(x.Logs) > 0 { + for iNdEx := len(x.Logs) - 1; iNdEx >= 0; iNdEx-- { + encoded, err := options.Marshal(x.Logs[iNdEx]) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0xa + } + } + if input.Buf != nil { + input.Buf = append(input.Buf, dAtA...) + } else { + input.Buf = dAtA + } + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { + x := input.Message.Interface().(*QueryTxLogsResponse) + if x == nil { + return protoiface.UnmarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Flags: input.Flags, + }, nil + } + options := runtime.UnmarshalInputToOptions(input) + _ = options + dAtA := input.Buf + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryTxLogsResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryTxLogsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Logs", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.Logs = append(x.Logs, &Log{}) + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Logs[len(x.Logs)-1]); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Pagination", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if x.Pagination == nil { + x.Pagination = &v1beta1.PageResponse{} + } + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Pagination); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var ( + md_QueryParamsRequest protoreflect.MessageDescriptor +) + +func init() { + file_cosmos_evm_vm_v1_query_proto_init() + md_QueryParamsRequest = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryParamsRequest") +} + +var _ protoreflect.Message = (*fastReflection_QueryParamsRequest)(nil) + +type fastReflection_QueryParamsRequest QueryParamsRequest + +func (x *QueryParamsRequest) ProtoReflect() protoreflect.Message { + return (*fastReflection_QueryParamsRequest)(x) +} + +func (x *QueryParamsRequest) slowProtoReflect() protoreflect.Message { + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[18] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +var _fastReflection_QueryParamsRequest_messageType fastReflection_QueryParamsRequest_messageType +var _ protoreflect.MessageType = fastReflection_QueryParamsRequest_messageType{} + +type fastReflection_QueryParamsRequest_messageType struct{} + +func (x fastReflection_QueryParamsRequest_messageType) Zero() protoreflect.Message { + return (*fastReflection_QueryParamsRequest)(nil) +} +func (x fastReflection_QueryParamsRequest_messageType) New() protoreflect.Message { + return new(fastReflection_QueryParamsRequest) +} +func (x fastReflection_QueryParamsRequest_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_QueryParamsRequest +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_QueryParamsRequest) Descriptor() protoreflect.MessageDescriptor { + return md_QueryParamsRequest +} + +// Type returns the message type, which encapsulates both Go and protobuf +// type information. If the Go type information is not needed, +// it is recommended that the message descriptor be used instead. +func (x *fastReflection_QueryParamsRequest) Type() protoreflect.MessageType { + return _fastReflection_QueryParamsRequest_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_QueryParamsRequest) New() protoreflect.Message { + return new(fastReflection_QueryParamsRequest) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_QueryParamsRequest) Interface() protoreflect.ProtoMessage { + return (*QueryParamsRequest)(x) +} + +// Range iterates over every populated field in an undefined order, +// calling f for each field descriptor and value encountered. +// Range returns immediately if f returns false. +// While iterating, mutating operations may only be performed +// on the current field descriptor. +func (x *fastReflection_QueryParamsRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { +} + +// Has reports whether a field is populated. +// +// Some fields have the property of nullability where it is possible to +// distinguish between the default value of a field and whether the field +// was explicitly populated with the default value. Singular message fields, +// member fields of a oneof, and proto2 scalar fields are nullable. Such +// fields are populated only if explicitly set. +// +// In other cases (aside from the nullable cases above), +// a proto3 scalar field is populated if it contains a non-zero value, and +// a repeated field is populated if it is non-empty. +func (x *fastReflection_QueryParamsRequest) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsRequest")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsRequest does not contain field %s", fd.FullName())) + } +} + +// Clear clears the field such that a subsequent Has call reports false. +// +// Clearing an extension field clears both the extension type and value +// associated with the given field number. +// +// Clear is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_QueryParamsRequest) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsRequest")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsRequest does not contain field %s", fd.FullName())) + } +} + +// Get retrieves the value for a field. +// +// For unpopulated scalars, it returns the default value, where +// the default value of a bytes scalar is guaranteed to be a copy. +// For unpopulated composite types, it returns an empty, read-only view +// of the value; to obtain a mutable reference, use Mutable. +func (x *fastReflection_QueryParamsRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsRequest")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsRequest does not contain field %s", descriptor.FullName())) + } +} + +// Set stores the value for a field. +// +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType. +// When setting a composite type, it is unspecified whether the stored value +// aliases the source's memory in any way. If the composite value is an +// empty, read-only value, then it panics. +// +// Set is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_QueryParamsRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsRequest")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsRequest does not contain field %s", fd.FullName())) + } +} + +// Mutable returns a mutable reference to a composite type. +// +// If the field is unpopulated, it may allocate a composite value. +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType +// if not already stored. +// It panics if the field does not contain a composite type. +// +// Mutable is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_QueryParamsRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsRequest")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsRequest does not contain field %s", fd.FullName())) + } +} + +// NewField returns a new value that is assignable to the field +// for the given descriptor. For scalars, this returns the default value. +// For lists, maps, and messages, this returns a new, empty, mutable value. +func (x *fastReflection_QueryParamsRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsRequest")) + } + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsRequest does not contain field %s", fd.FullName())) + } +} + +// WhichOneof reports which field within the oneof is populated, +// returning nil if none are populated. +// It panics if the oneof descriptor does not belong to this message. +func (x *fastReflection_QueryParamsRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryParamsRequest", d.FullName())) + } + panic("unreachable") +} + +// GetUnknown retrieves the entire list of unknown fields. +// The caller may only mutate the contents of the RawFields +// if the mutated bytes are stored back into the message with SetUnknown. +func (x *fastReflection_QueryParamsRequest) GetUnknown() protoreflect.RawFields { + return x.unknownFields +} + +// SetUnknown stores an entire list of unknown fields. +// The raw fields must be syntactically valid according to the wire format. +// An implementation may panic if this is not the case. +// Once stored, the caller must not mutate the content of the RawFields. +// An empty RawFields may be passed to clear the fields. +// +// SetUnknown is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_QueryParamsRequest) SetUnknown(fields protoreflect.RawFields) { + x.unknownFields = fields +} + +// IsValid reports whether the message is valid. +// +// An invalid message is an empty, read-only value. +// +// An invalid message often corresponds to a nil pointer of the concrete +// message type, but the details are implementation dependent. +// Validity is not part of the protobuf data model, and may not +// be preserved in marshaling or other operations. +func (x *fastReflection_QueryParamsRequest) IsValid() bool { + return x != nil +} + +// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. +// This method may return nil. +// +// The returned methods type is identical to +// "google.golang.org/protobuf/runtime/protoiface".Methods. +// Consult the protoiface package documentation for details. +func (x *fastReflection_QueryParamsRequest) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*QueryParamsRequest) + if x == nil { + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: 0, + } + } + options := runtime.SizeInputToOptions(input) + _ = options + var n int + var l int + _ = l + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*QueryParamsRequest) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if input.Buf != nil { + input.Buf = append(input.Buf, dAtA...) + } else { + input.Buf = dAtA + } + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { + x := input.Message.Interface().(*QueryParamsRequest) + if x == nil { + return protoiface.UnmarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Flags: input.Flags, + }, nil + } + options := runtime.UnmarshalInputToOptions(input) + _ = options + dAtA := input.Buf + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryParamsRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryParamsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var ( + md_QueryParamsResponse protoreflect.MessageDescriptor + fd_QueryParamsResponse_params protoreflect.FieldDescriptor +) + +func init() { + file_cosmos_evm_vm_v1_query_proto_init() + md_QueryParamsResponse = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryParamsResponse") + fd_QueryParamsResponse_params = md_QueryParamsResponse.Fields().ByName("params") +} + +var _ protoreflect.Message = (*fastReflection_QueryParamsResponse)(nil) + +type fastReflection_QueryParamsResponse QueryParamsResponse + +func (x *QueryParamsResponse) ProtoReflect() protoreflect.Message { + return (*fastReflection_QueryParamsResponse)(x) +} + +func (x *QueryParamsResponse) slowProtoReflect() protoreflect.Message { + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[19] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +var _fastReflection_QueryParamsResponse_messageType fastReflection_QueryParamsResponse_messageType +var _ protoreflect.MessageType = fastReflection_QueryParamsResponse_messageType{} + +type fastReflection_QueryParamsResponse_messageType struct{} + +func (x fastReflection_QueryParamsResponse_messageType) Zero() protoreflect.Message { + return (*fastReflection_QueryParamsResponse)(nil) +} +func (x fastReflection_QueryParamsResponse_messageType) New() protoreflect.Message { + return new(fastReflection_QueryParamsResponse) +} +func (x fastReflection_QueryParamsResponse_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_QueryParamsResponse +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_QueryParamsResponse) Descriptor() protoreflect.MessageDescriptor { + return md_QueryParamsResponse +} + +// Type returns the message type, which encapsulates both Go and protobuf +// type information. If the Go type information is not needed, +// it is recommended that the message descriptor be used instead. +func (x *fastReflection_QueryParamsResponse) Type() protoreflect.MessageType { + return _fastReflection_QueryParamsResponse_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_QueryParamsResponse) New() protoreflect.Message { + return new(fastReflection_QueryParamsResponse) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_QueryTxLogsResponse) Interface() protoreflect.ProtoMessage { - return (*QueryTxLogsResponse)(x) +func (x *fastReflection_QueryParamsResponse) Interface() protoreflect.ProtoMessage { + return (*QueryParamsResponse)(x) } // Range iterates over every populated field in an undefined order, @@ -6845,16 +8605,10 @@ func (x *fastReflection_QueryTxLogsResponse) Interface() protoreflect.ProtoMessa // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_QueryTxLogsResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if len(x.Logs) != 0 { - value := protoreflect.ValueOfList(&_QueryTxLogsResponse_1_list{list: &x.Logs}) - if !f(fd_QueryTxLogsResponse_logs, value) { - return - } - } - if x.Pagination != nil { - value := protoreflect.ValueOfMessage(x.Pagination.ProtoReflect()) - if !f(fd_QueryTxLogsResponse_pagination, value) { +func (x *fastReflection_QueryParamsResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Params != nil { + value := protoreflect.ValueOfMessage(x.Params.ProtoReflect()) + if !f(fd_QueryParamsResponse_params, value) { return } } @@ -6871,17 +8625,15 @@ func (x *fastReflection_QueryTxLogsResponse) Range(f func(protoreflect.FieldDesc // In other cases (aside from the nullable cases above), // a proto3 scalar field is populated if it contains a non-zero value, and // a repeated field is populated if it is non-empty. -func (x *fastReflection_QueryTxLogsResponse) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_QueryParamsResponse) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryTxLogsResponse.logs": - return len(x.Logs) != 0 - case "cosmos.evm.vm.v1.QueryTxLogsResponse.pagination": - return x.Pagination != nil + case "cosmos.evm.vm.v1.QueryParamsResponse.params": + return x.Params != nil default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsResponse does not contain field %s", fd.FullName())) } } @@ -6891,17 +8643,15 @@ func (x *fastReflection_QueryTxLogsResponse) Has(fd protoreflect.FieldDescriptor // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryTxLogsResponse) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_QueryParamsResponse) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryTxLogsResponse.logs": - x.Logs = nil - case "cosmos.evm.vm.v1.QueryTxLogsResponse.pagination": - x.Pagination = nil + case "cosmos.evm.vm.v1.QueryParamsResponse.params": + x.Params = nil default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsResponse does not contain field %s", fd.FullName())) } } @@ -6911,22 +8661,16 @@ func (x *fastReflection_QueryTxLogsResponse) Clear(fd protoreflect.FieldDescript // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_QueryTxLogsResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryParamsResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "cosmos.evm.vm.v1.QueryTxLogsResponse.logs": - if len(x.Logs) == 0 { - return protoreflect.ValueOfList(&_QueryTxLogsResponse_1_list{}) - } - listValue := &_QueryTxLogsResponse_1_list{list: &x.Logs} - return protoreflect.ValueOfList(listValue) - case "cosmos.evm.vm.v1.QueryTxLogsResponse.pagination": - value := x.Pagination + case "cosmos.evm.vm.v1.QueryParamsResponse.params": + value := x.Params return protoreflect.ValueOfMessage(value.ProtoReflect()) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsResponse does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsResponse does not contain field %s", descriptor.FullName())) } } @@ -6940,19 +8684,15 @@ func (x *fastReflection_QueryTxLogsResponse) Get(descriptor protoreflect.FieldDe // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryTxLogsResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_QueryParamsResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryTxLogsResponse.logs": - lv := value.List() - clv := lv.(*_QueryTxLogsResponse_1_list) - x.Logs = *clv.list - case "cosmos.evm.vm.v1.QueryTxLogsResponse.pagination": - x.Pagination = value.Message().Interface().(*v1beta1.PageResponse) + case "cosmos.evm.vm.v1.QueryParamsResponse.params": + x.Params = value.Message().Interface().(*Params) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsResponse does not contain field %s", fd.FullName())) } } @@ -6966,53 +8706,44 @@ func (x *fastReflection_QueryTxLogsResponse) Set(fd protoreflect.FieldDescriptor // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryTxLogsResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryParamsResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryTxLogsResponse.logs": - if x.Logs == nil { - x.Logs = []*Log{} - } - value := &_QueryTxLogsResponse_1_list{list: &x.Logs} - return protoreflect.ValueOfList(value) - case "cosmos.evm.vm.v1.QueryTxLogsResponse.pagination": - if x.Pagination == nil { - x.Pagination = new(v1beta1.PageResponse) + case "cosmos.evm.vm.v1.QueryParamsResponse.params": + if x.Params == nil { + x.Params = new(Params) } - return protoreflect.ValueOfMessage(x.Pagination.ProtoReflect()) + return protoreflect.ValueOfMessage(x.Params.ProtoReflect()) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsResponse does not contain field %s", fd.FullName())) } } // NewField returns a new value that is assignable to the field // for the given descriptor. For scalars, this returns the default value. // For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_QueryTxLogsResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_QueryParamsResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryTxLogsResponse.logs": - list := []*Log{} - return protoreflect.ValueOfList(&_QueryTxLogsResponse_1_list{list: &list}) - case "cosmos.evm.vm.v1.QueryTxLogsResponse.pagination": - m := new(v1beta1.PageResponse) + case "cosmos.evm.vm.v1.QueryParamsResponse.params": + m := new(Params) return protoreflect.ValueOfMessage(m.ProtoReflect()) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryTxLogsResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsResponse")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryTxLogsResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsResponse does not contain field %s", fd.FullName())) } } // WhichOneof reports which field within the oneof is populated, // returning nil if none are populated. // It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_QueryTxLogsResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_QueryParamsResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryTxLogsResponse", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryParamsResponse", d.FullName())) } panic("unreachable") } @@ -7020,7 +8751,7 @@ func (x *fastReflection_QueryTxLogsResponse) WhichOneof(d protoreflect.OneofDesc // GetUnknown retrieves the entire list of unknown fields. // The caller may only mutate the contents of the RawFields // if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_QueryTxLogsResponse) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_QueryParamsResponse) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -7031,7 +8762,7 @@ func (x *fastReflection_QueryTxLogsResponse) GetUnknown() protoreflect.RawFields // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryTxLogsResponse) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_QueryParamsResponse) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -7043,7 +8774,7 @@ func (x *fastReflection_QueryTxLogsResponse) SetUnknown(fields protoreflect.RawF // message type, but the details are implementation dependent. // Validity is not part of the protobuf data model, and may not // be preserved in marshaling or other operations. -func (x *fastReflection_QueryTxLogsResponse) IsValid() bool { +func (x *fastReflection_QueryParamsResponse) IsValid() bool { return x != nil } @@ -7053,9 +8784,9 @@ func (x *fastReflection_QueryTxLogsResponse) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_QueryTxLogsResponse) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_QueryParamsResponse) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*QueryTxLogsResponse) + x := input.Message.Interface().(*QueryParamsResponse) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -7067,14 +8798,8 @@ func (x *fastReflection_QueryTxLogsResponse) ProtoMethods() *protoiface.Methods var n int var l int _ = l - if len(x.Logs) > 0 { - for _, e := range x.Logs { - l = options.Size(e) - n += 1 + l + runtime.Sov(uint64(l)) - } - } - if x.Pagination != nil { - l = options.Size(x.Pagination) + if x.Params != nil { + l = options.Size(x.Params) n += 1 + l + runtime.Sov(uint64(l)) } if x.unknownFields != nil { @@ -7087,7 +8812,7 @@ func (x *fastReflection_QueryTxLogsResponse) ProtoMethods() *protoiface.Methods } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*QueryTxLogsResponse) + x := input.Message.Interface().(*QueryParamsResponse) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -7106,8 +8831,8 @@ func (x *fastReflection_QueryTxLogsResponse) ProtoMethods() *protoiface.Methods i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } - if x.Pagination != nil { - encoded, err := options.Marshal(x.Pagination) + if x.Params != nil { + encoded, err := options.Marshal(x.Params) if err != nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -7118,23 +8843,7 @@ func (x *fastReflection_QueryTxLogsResponse) ProtoMethods() *protoiface.Methods copy(dAtA[i:], encoded) i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) i-- - dAtA[i] = 0x12 - } - if len(x.Logs) > 0 { - for iNdEx := len(x.Logs) - 1; iNdEx >= 0; iNdEx-- { - encoded, err := options.Marshal(x.Logs[iNdEx]) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err - } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) - i-- - dAtA[i] = 0xa - } + dAtA[i] = 0xa } if input.Buf != nil { input.Buf = append(input.Buf, dAtA...) @@ -7147,7 +8856,7 @@ func (x *fastReflection_QueryTxLogsResponse) ProtoMethods() *protoiface.Methods }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*QueryTxLogsResponse) + x := input.Message.Interface().(*QueryParamsResponse) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -7179,49 +8888,15 @@ func (x *fastReflection_QueryTxLogsResponse) ProtoMethods() *protoiface.Methods fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryTxLogsResponse: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryParamsResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryTxLogsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryParamsResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Logs", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow - } - if iNdEx >= l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - x.Logs = append(x.Logs, &Log{}) - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Logs[len(x.Logs)-1]); err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Pagination", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Params", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -7248,10 +8923,10 @@ func (x *fastReflection_QueryTxLogsResponse) ProtoMethods() *protoiface.Methods if postIndex > l { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF } - if x.Pagination == nil { - x.Pagination = &v1beta1.PageResponse{} + if x.Params == nil { + x.Params = &Params{} } - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Pagination); err != nil { + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Params); err != nil { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err } iNdEx = postIndex @@ -7291,24 +8966,30 @@ func (x *fastReflection_QueryTxLogsResponse) ProtoMethods() *protoiface.Methods } var ( - md_QueryParamsRequest protoreflect.MessageDescriptor + md_StateEntry protoreflect.MessageDescriptor + fd_StateEntry_key protoreflect.FieldDescriptor + fd_StateEntry_value protoreflect.FieldDescriptor + fd_StateEntry_delete protoreflect.FieldDescriptor ) func init() { file_cosmos_evm_vm_v1_query_proto_init() - md_QueryParamsRequest = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryParamsRequest") + md_StateEntry = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("StateEntry") + fd_StateEntry_key = md_StateEntry.Fields().ByName("key") + fd_StateEntry_value = md_StateEntry.Fields().ByName("value") + fd_StateEntry_delete = md_StateEntry.Fields().ByName("delete") } -var _ protoreflect.Message = (*fastReflection_QueryParamsRequest)(nil) +var _ protoreflect.Message = (*fastReflection_StateEntry)(nil) -type fastReflection_QueryParamsRequest QueryParamsRequest +type fastReflection_StateEntry StateEntry -func (x *QueryParamsRequest) ProtoReflect() protoreflect.Message { - return (*fastReflection_QueryParamsRequest)(x) +func (x *StateEntry) ProtoReflect() protoreflect.Message { + return (*fastReflection_StateEntry)(x) } -func (x *QueryParamsRequest) slowProtoReflect() protoreflect.Message { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[16] +func (x *StateEntry) slowProtoReflect() protoreflect.Message { + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7319,43 +9000,43 @@ func (x *QueryParamsRequest) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_QueryParamsRequest_messageType fastReflection_QueryParamsRequest_messageType -var _ protoreflect.MessageType = fastReflection_QueryParamsRequest_messageType{} +var _fastReflection_StateEntry_messageType fastReflection_StateEntry_messageType +var _ protoreflect.MessageType = fastReflection_StateEntry_messageType{} -type fastReflection_QueryParamsRequest_messageType struct{} +type fastReflection_StateEntry_messageType struct{} -func (x fastReflection_QueryParamsRequest_messageType) Zero() protoreflect.Message { - return (*fastReflection_QueryParamsRequest)(nil) +func (x fastReflection_StateEntry_messageType) Zero() protoreflect.Message { + return (*fastReflection_StateEntry)(nil) } -func (x fastReflection_QueryParamsRequest_messageType) New() protoreflect.Message { - return new(fastReflection_QueryParamsRequest) +func (x fastReflection_StateEntry_messageType) New() protoreflect.Message { + return new(fastReflection_StateEntry) } -func (x fastReflection_QueryParamsRequest_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_QueryParamsRequest +func (x fastReflection_StateEntry_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_StateEntry } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_QueryParamsRequest) Descriptor() protoreflect.MessageDescriptor { - return md_QueryParamsRequest +func (x *fastReflection_StateEntry) Descriptor() protoreflect.MessageDescriptor { + return md_StateEntry } // Type returns the message type, which encapsulates both Go and protobuf // type information. If the Go type information is not needed, // it is recommended that the message descriptor be used instead. -func (x *fastReflection_QueryParamsRequest) Type() protoreflect.MessageType { - return _fastReflection_QueryParamsRequest_messageType +func (x *fastReflection_StateEntry) Type() protoreflect.MessageType { + return _fastReflection_StateEntry_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_QueryParamsRequest) New() protoreflect.Message { - return new(fastReflection_QueryParamsRequest) +func (x *fastReflection_StateEntry) New() protoreflect.Message { + return new(fastReflection_StateEntry) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_QueryParamsRequest) Interface() protoreflect.ProtoMessage { - return (*QueryParamsRequest)(x) +func (x *fastReflection_StateEntry) Interface() protoreflect.ProtoMessage { + return (*StateEntry)(x) } // Range iterates over every populated field in an undefined order, @@ -7363,7 +9044,25 @@ func (x *fastReflection_QueryParamsRequest) Interface() protoreflect.ProtoMessag // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_QueryParamsRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { +func (x *fastReflection_StateEntry) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if len(x.Key) != 0 { + value := protoreflect.ValueOfBytes(x.Key) + if !f(fd_StateEntry_key, value) { + return + } + } + if len(x.Value) != 0 { + value := protoreflect.ValueOfBytes(x.Value) + if !f(fd_StateEntry_value, value) { + return + } + } + if x.Delete != false { + value := protoreflect.ValueOfBool(x.Delete) + if !f(fd_StateEntry_delete, value) { + return + } + } } // Has reports whether a field is populated. @@ -7377,13 +9076,19 @@ func (x *fastReflection_QueryParamsRequest) Range(f func(protoreflect.FieldDescr // In other cases (aside from the nullable cases above), // a proto3 scalar field is populated if it contains a non-zero value, and // a repeated field is populated if it is non-empty. -func (x *fastReflection_QueryParamsRequest) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_StateEntry) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { + case "cosmos.evm.vm.v1.StateEntry.key": + return len(x.Key) != 0 + case "cosmos.evm.vm.v1.StateEntry.value": + return len(x.Value) != 0 + case "cosmos.evm.vm.v1.StateEntry.delete": + return x.Delete != false default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.StateEntry")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.StateEntry does not contain field %s", fd.FullName())) } } @@ -7393,13 +9098,19 @@ func (x *fastReflection_QueryParamsRequest) Has(fd protoreflect.FieldDescriptor) // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryParamsRequest) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_StateEntry) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { + case "cosmos.evm.vm.v1.StateEntry.key": + x.Key = nil + case "cosmos.evm.vm.v1.StateEntry.value": + x.Value = nil + case "cosmos.evm.vm.v1.StateEntry.delete": + x.Delete = false default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.StateEntry")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.StateEntry does not contain field %s", fd.FullName())) } } @@ -7409,13 +9120,22 @@ func (x *fastReflection_QueryParamsRequest) Clear(fd protoreflect.FieldDescripto // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_QueryParamsRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_StateEntry) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { + case "cosmos.evm.vm.v1.StateEntry.key": + value := x.Key + return protoreflect.ValueOfBytes(value) + case "cosmos.evm.vm.v1.StateEntry.value": + value := x.Value + return protoreflect.ValueOfBytes(value) + case "cosmos.evm.vm.v1.StateEntry.delete": + value := x.Delete + return protoreflect.ValueOfBool(value) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.StateEntry")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsRequest does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.StateEntry does not contain field %s", descriptor.FullName())) } } @@ -7429,13 +9149,19 @@ func (x *fastReflection_QueryParamsRequest) Get(descriptor protoreflect.FieldDes // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryParamsRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_StateEntry) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { + case "cosmos.evm.vm.v1.StateEntry.key": + x.Key = value.Bytes() + case "cosmos.evm.vm.v1.StateEntry.value": + x.Value = value.Bytes() + case "cosmos.evm.vm.v1.StateEntry.delete": + x.Delete = value.Bool() default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.StateEntry")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.StateEntry does not contain field %s", fd.FullName())) } } @@ -7449,36 +9175,48 @@ func (x *fastReflection_QueryParamsRequest) Set(fd protoreflect.FieldDescriptor, // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryParamsRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_StateEntry) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { + case "cosmos.evm.vm.v1.StateEntry.key": + panic(fmt.Errorf("field key of message cosmos.evm.vm.v1.StateEntry is not mutable")) + case "cosmos.evm.vm.v1.StateEntry.value": + panic(fmt.Errorf("field value of message cosmos.evm.vm.v1.StateEntry is not mutable")) + case "cosmos.evm.vm.v1.StateEntry.delete": + panic(fmt.Errorf("field delete of message cosmos.evm.vm.v1.StateEntry is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.StateEntry")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.StateEntry does not contain field %s", fd.FullName())) } } // NewField returns a new value that is assignable to the field // for the given descriptor. For scalars, this returns the default value. // For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_QueryParamsRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_StateEntry) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { + case "cosmos.evm.vm.v1.StateEntry.key": + return protoreflect.ValueOfBytes(nil) + case "cosmos.evm.vm.v1.StateEntry.value": + return protoreflect.ValueOfBytes(nil) + case "cosmos.evm.vm.v1.StateEntry.delete": + return protoreflect.ValueOfBool(false) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsRequest")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.StateEntry")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsRequest does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.StateEntry does not contain field %s", fd.FullName())) } } // WhichOneof reports which field within the oneof is populated, // returning nil if none are populated. // It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_QueryParamsRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_StateEntry) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryParamsRequest", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.StateEntry", d.FullName())) } panic("unreachable") } @@ -7486,7 +9224,7 @@ func (x *fastReflection_QueryParamsRequest) WhichOneof(d protoreflect.OneofDescr // GetUnknown retrieves the entire list of unknown fields. // The caller may only mutate the contents of the RawFields // if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_QueryParamsRequest) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_StateEntry) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -7497,7 +9235,7 @@ func (x *fastReflection_QueryParamsRequest) GetUnknown() protoreflect.RawFields // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryParamsRequest) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_StateEntry) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -7509,7 +9247,7 @@ func (x *fastReflection_QueryParamsRequest) SetUnknown(fields protoreflect.RawFi // message type, but the details are implementation dependent. // Validity is not part of the protobuf data model, and may not // be preserved in marshaling or other operations. -func (x *fastReflection_QueryParamsRequest) IsValid() bool { +func (x *fastReflection_StateEntry) IsValid() bool { return x != nil } @@ -7519,9 +9257,9 @@ func (x *fastReflection_QueryParamsRequest) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_QueryParamsRequest) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_StateEntry) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*QueryParamsRequest) + x := input.Message.Interface().(*StateEntry) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -7533,6 +9271,17 @@ func (x *fastReflection_QueryParamsRequest) ProtoMethods() *protoiface.Methods { var n int var l int _ = l + l = len(x.Key) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.Value) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.Delete { + n += 2 + } if x.unknownFields != nil { n += len(x.unknownFields) } @@ -7543,7 +9292,7 @@ func (x *fastReflection_QueryParamsRequest) ProtoMethods() *protoiface.Methods { } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*QueryParamsRequest) + x := input.Message.Interface().(*StateEntry) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -7562,6 +9311,30 @@ func (x *fastReflection_QueryParamsRequest) ProtoMethods() *protoiface.Methods { i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } + if x.Delete { + i-- + if x.Delete { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x18 + } + if len(x.Value) > 0 { + i -= len(x.Value) + copy(dAtA[i:], x.Value) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Value))) + i-- + dAtA[i] = 0x12 + } + if len(x.Key) > 0 { + i -= len(x.Key) + copy(dAtA[i:], x.Key) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Key))) + i-- + dAtA[i] = 0xa + } if input.Buf != nil { input.Buf = append(input.Buf, dAtA...) } else { @@ -7573,7 +9346,7 @@ func (x *fastReflection_QueryParamsRequest) ProtoMethods() *protoiface.Methods { }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*QueryParamsRequest) + x := input.Message.Interface().(*StateEntry) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -7605,12 +9378,100 @@ func (x *fastReflection_QueryParamsRequest) ProtoMethods() *protoiface.Methods { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryParamsRequest: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: StateEntry: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryParamsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: StateEntry: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 1: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Key", wireType) + } + var byteLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + byteLen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if byteLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + byteLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.Key = append(x.Key[:0], dAtA[iNdEx:postIndex]...) + if x.Key == nil { + x.Key = []byte{} + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Value", wireType) + } + var byteLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + byteLen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if byteLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + byteLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.Value = append(x.Value[:0], dAtA[iNdEx:postIndex]...) + if x.Value == nil { + x.Value = []byte{} + } + iNdEx = postIndex + case 3: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Delete", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + x.Delete = bool(v != 0) default: iNdEx = preIndex skippy, err := runtime.Skip(dAtA[iNdEx:]) @@ -7646,27 +9507,80 @@ func (x *fastReflection_QueryParamsRequest) ProtoMethods() *protoiface.Methods { } } +var _ protoreflect.List = (*_StoreStateDiff_2_list)(nil) + +type _StoreStateDiff_2_list struct { + list *[]*StateEntry +} + +func (x *_StoreStateDiff_2_list) Len() int { + if x.list == nil { + return 0 + } + return len(*x.list) +} + +func (x *_StoreStateDiff_2_list) Get(i int) protoreflect.Value { + return protoreflect.ValueOfMessage((*x.list)[i].ProtoReflect()) +} + +func (x *_StoreStateDiff_2_list) Set(i int, value protoreflect.Value) { + valueUnwrapped := value.Message() + concreteValue := valueUnwrapped.Interface().(*StateEntry) + (*x.list)[i] = concreteValue +} + +func (x *_StoreStateDiff_2_list) Append(value protoreflect.Value) { + valueUnwrapped := value.Message() + concreteValue := valueUnwrapped.Interface().(*StateEntry) + *x.list = append(*x.list, concreteValue) +} + +func (x *_StoreStateDiff_2_list) AppendMutable() protoreflect.Value { + v := new(StateEntry) + *x.list = append(*x.list, v) + return protoreflect.ValueOfMessage(v.ProtoReflect()) +} + +func (x *_StoreStateDiff_2_list) Truncate(n int) { + for i := n; i < len(*x.list); i++ { + (*x.list)[i] = nil + } + *x.list = (*x.list)[:n] +} + +func (x *_StoreStateDiff_2_list) NewElement() protoreflect.Value { + v := new(StateEntry) + return protoreflect.ValueOfMessage(v.ProtoReflect()) +} + +func (x *_StoreStateDiff_2_list) IsValid() bool { + return x.list != nil +} + var ( - md_QueryParamsResponse protoreflect.MessageDescriptor - fd_QueryParamsResponse_params protoreflect.FieldDescriptor + md_StoreStateDiff protoreflect.MessageDescriptor + fd_StoreStateDiff_name protoreflect.FieldDescriptor + fd_StoreStateDiff_entries protoreflect.FieldDescriptor ) func init() { file_cosmos_evm_vm_v1_query_proto_init() - md_QueryParamsResponse = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryParamsResponse") - fd_QueryParamsResponse_params = md_QueryParamsResponse.Fields().ByName("params") + md_StoreStateDiff = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("StoreStateDiff") + fd_StoreStateDiff_name = md_StoreStateDiff.Fields().ByName("name") + fd_StoreStateDiff_entries = md_StoreStateDiff.Fields().ByName("entries") } -var _ protoreflect.Message = (*fastReflection_QueryParamsResponse)(nil) +var _ protoreflect.Message = (*fastReflection_StoreStateDiff)(nil) -type fastReflection_QueryParamsResponse QueryParamsResponse +type fastReflection_StoreStateDiff StoreStateDiff -func (x *QueryParamsResponse) ProtoReflect() protoreflect.Message { - return (*fastReflection_QueryParamsResponse)(x) +func (x *StoreStateDiff) ProtoReflect() protoreflect.Message { + return (*fastReflection_StoreStateDiff)(x) } -func (x *QueryParamsResponse) slowProtoReflect() protoreflect.Message { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[17] +func (x *StoreStateDiff) slowProtoReflect() protoreflect.Message { + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7677,43 +9591,43 @@ func (x *QueryParamsResponse) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_QueryParamsResponse_messageType fastReflection_QueryParamsResponse_messageType -var _ protoreflect.MessageType = fastReflection_QueryParamsResponse_messageType{} +var _fastReflection_StoreStateDiff_messageType fastReflection_StoreStateDiff_messageType +var _ protoreflect.MessageType = fastReflection_StoreStateDiff_messageType{} -type fastReflection_QueryParamsResponse_messageType struct{} +type fastReflection_StoreStateDiff_messageType struct{} -func (x fastReflection_QueryParamsResponse_messageType) Zero() protoreflect.Message { - return (*fastReflection_QueryParamsResponse)(nil) +func (x fastReflection_StoreStateDiff_messageType) Zero() protoreflect.Message { + return (*fastReflection_StoreStateDiff)(nil) } -func (x fastReflection_QueryParamsResponse_messageType) New() protoreflect.Message { - return new(fastReflection_QueryParamsResponse) +func (x fastReflection_StoreStateDiff_messageType) New() protoreflect.Message { + return new(fastReflection_StoreStateDiff) } -func (x fastReflection_QueryParamsResponse_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_QueryParamsResponse +func (x fastReflection_StoreStateDiff_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_StoreStateDiff } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_QueryParamsResponse) Descriptor() protoreflect.MessageDescriptor { - return md_QueryParamsResponse +func (x *fastReflection_StoreStateDiff) Descriptor() protoreflect.MessageDescriptor { + return md_StoreStateDiff } // Type returns the message type, which encapsulates both Go and protobuf // type information. If the Go type information is not needed, // it is recommended that the message descriptor be used instead. -func (x *fastReflection_QueryParamsResponse) Type() protoreflect.MessageType { - return _fastReflection_QueryParamsResponse_messageType +func (x *fastReflection_StoreStateDiff) Type() protoreflect.MessageType { + return _fastReflection_StoreStateDiff_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_QueryParamsResponse) New() protoreflect.Message { - return new(fastReflection_QueryParamsResponse) +func (x *fastReflection_StoreStateDiff) New() protoreflect.Message { + return new(fastReflection_StoreStateDiff) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_QueryParamsResponse) Interface() protoreflect.ProtoMessage { - return (*QueryParamsResponse)(x) +func (x *fastReflection_StoreStateDiff) Interface() protoreflect.ProtoMessage { + return (*StoreStateDiff)(x) } // Range iterates over every populated field in an undefined order, @@ -7721,10 +9635,16 @@ func (x *fastReflection_QueryParamsResponse) Interface() protoreflect.ProtoMessa // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_QueryParamsResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.Params != nil { - value := protoreflect.ValueOfMessage(x.Params.ProtoReflect()) - if !f(fd_QueryParamsResponse_params, value) { +func (x *fastReflection_StoreStateDiff) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Name != "" { + value := protoreflect.ValueOfString(x.Name) + if !f(fd_StoreStateDiff_name, value) { + return + } + } + if len(x.Entries) != 0 { + value := protoreflect.ValueOfList(&_StoreStateDiff_2_list{list: &x.Entries}) + if !f(fd_StoreStateDiff_entries, value) { return } } @@ -7741,15 +9661,17 @@ func (x *fastReflection_QueryParamsResponse) Range(f func(protoreflect.FieldDesc // In other cases (aside from the nullable cases above), // a proto3 scalar field is populated if it contains a non-zero value, and // a repeated field is populated if it is non-empty. -func (x *fastReflection_QueryParamsResponse) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_StoreStateDiff) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryParamsResponse.params": - return x.Params != nil + case "cosmos.evm.vm.v1.StoreStateDiff.name": + return x.Name != "" + case "cosmos.evm.vm.v1.StoreStateDiff.entries": + return len(x.Entries) != 0 default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.StoreStateDiff")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.StoreStateDiff does not contain field %s", fd.FullName())) } } @@ -7759,15 +9681,17 @@ func (x *fastReflection_QueryParamsResponse) Has(fd protoreflect.FieldDescriptor // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryParamsResponse) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_StoreStateDiff) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryParamsResponse.params": - x.Params = nil + case "cosmos.evm.vm.v1.StoreStateDiff.name": + x.Name = "" + case "cosmos.evm.vm.v1.StoreStateDiff.entries": + x.Entries = nil default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.StoreStateDiff")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.StoreStateDiff does not contain field %s", fd.FullName())) } } @@ -7777,16 +9701,22 @@ func (x *fastReflection_QueryParamsResponse) Clear(fd protoreflect.FieldDescript // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_QueryParamsResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_StoreStateDiff) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "cosmos.evm.vm.v1.QueryParamsResponse.params": - value := x.Params - return protoreflect.ValueOfMessage(value.ProtoReflect()) + case "cosmos.evm.vm.v1.StoreStateDiff.name": + value := x.Name + return protoreflect.ValueOfString(value) + case "cosmos.evm.vm.v1.StoreStateDiff.entries": + if len(x.Entries) == 0 { + return protoreflect.ValueOfList(&_StoreStateDiff_2_list{}) + } + listValue := &_StoreStateDiff_2_list{list: &x.Entries} + return protoreflect.ValueOfList(listValue) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.StoreStateDiff")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsResponse does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.StoreStateDiff does not contain field %s", descriptor.FullName())) } } @@ -7800,15 +9730,19 @@ func (x *fastReflection_QueryParamsResponse) Get(descriptor protoreflect.FieldDe // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryParamsResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_StoreStateDiff) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryParamsResponse.params": - x.Params = value.Message().Interface().(*Params) + case "cosmos.evm.vm.v1.StoreStateDiff.name": + x.Name = value.Interface().(string) + case "cosmos.evm.vm.v1.StoreStateDiff.entries": + lv := value.List() + clv := lv.(*_StoreStateDiff_2_list) + x.Entries = *clv.list default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.StoreStateDiff")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.StoreStateDiff does not contain field %s", fd.FullName())) } } @@ -7822,44 +9756,49 @@ func (x *fastReflection_QueryParamsResponse) Set(fd protoreflect.FieldDescriptor // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryParamsResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_StoreStateDiff) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryParamsResponse.params": - if x.Params == nil { - x.Params = new(Params) + case "cosmos.evm.vm.v1.StoreStateDiff.entries": + if x.Entries == nil { + x.Entries = []*StateEntry{} } - return protoreflect.ValueOfMessage(x.Params.ProtoReflect()) + value := &_StoreStateDiff_2_list{list: &x.Entries} + return protoreflect.ValueOfList(value) + case "cosmos.evm.vm.v1.StoreStateDiff.name": + panic(fmt.Errorf("field name of message cosmos.evm.vm.v1.StoreStateDiff is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.StoreStateDiff")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.StoreStateDiff does not contain field %s", fd.FullName())) } } // NewField returns a new value that is assignable to the field // for the given descriptor. For scalars, this returns the default value. // For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_QueryParamsResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_StoreStateDiff) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "cosmos.evm.vm.v1.QueryParamsResponse.params": - m := new(Params) - return protoreflect.ValueOfMessage(m.ProtoReflect()) + case "cosmos.evm.vm.v1.StoreStateDiff.name": + return protoreflect.ValueOfString("") + case "cosmos.evm.vm.v1.StoreStateDiff.entries": + list := []*StateEntry{} + return protoreflect.ValueOfList(&_StoreStateDiff_2_list{list: &list}) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryParamsResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.StoreStateDiff")) } - panic(fmt.Errorf("message cosmos.evm.vm.v1.QueryParamsResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message cosmos.evm.vm.v1.StoreStateDiff does not contain field %s", fd.FullName())) } } // WhichOneof reports which field within the oneof is populated, // returning nil if none are populated. // It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_QueryParamsResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_StoreStateDiff) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.QueryParamsResponse", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in cosmos.evm.vm.v1.StoreStateDiff", d.FullName())) } panic("unreachable") } @@ -7867,7 +9806,7 @@ func (x *fastReflection_QueryParamsResponse) WhichOneof(d protoreflect.OneofDesc // GetUnknown retrieves the entire list of unknown fields. // The caller may only mutate the contents of the RawFields // if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_QueryParamsResponse) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_StoreStateDiff) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -7878,7 +9817,7 @@ func (x *fastReflection_QueryParamsResponse) GetUnknown() protoreflect.RawFields // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryParamsResponse) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_StoreStateDiff) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -7890,7 +9829,7 @@ func (x *fastReflection_QueryParamsResponse) SetUnknown(fields protoreflect.RawF // message type, but the details are implementation dependent. // Validity is not part of the protobuf data model, and may not // be preserved in marshaling or other operations. -func (x *fastReflection_QueryParamsResponse) IsValid() bool { +func (x *fastReflection_StoreStateDiff) IsValid() bool { return x != nil } @@ -7900,9 +9839,9 @@ func (x *fastReflection_QueryParamsResponse) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_QueryParamsResponse) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_StoreStateDiff) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*QueryParamsResponse) + x := input.Message.Interface().(*StoreStateDiff) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -7914,10 +9853,16 @@ func (x *fastReflection_QueryParamsResponse) ProtoMethods() *protoiface.Methods var n int var l int _ = l - if x.Params != nil { - l = options.Size(x.Params) + l = len(x.Name) + if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } + if len(x.Entries) > 0 { + for _, e := range x.Entries { + l = options.Size(e) + n += 1 + l + runtime.Sov(uint64(l)) + } + } if x.unknownFields != nil { n += len(x.unknownFields) } @@ -7928,7 +9873,7 @@ func (x *fastReflection_QueryParamsResponse) ProtoMethods() *protoiface.Methods } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*QueryParamsResponse) + x := input.Message.Interface().(*StoreStateDiff) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -7947,17 +9892,26 @@ func (x *fastReflection_QueryParamsResponse) ProtoMethods() *protoiface.Methods i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } - if x.Params != nil { - encoded, err := options.Marshal(x.Params) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err + if len(x.Entries) > 0 { + for iNdEx := len(x.Entries) - 1; iNdEx >= 0; iNdEx-- { + encoded, err := options.Marshal(x.Entries[iNdEx]) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x12 } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + } + if len(x.Name) > 0 { + i -= len(x.Name) + copy(dAtA[i:], x.Name) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Name))) i-- dAtA[i] = 0xa } @@ -7972,7 +9926,7 @@ func (x *fastReflection_QueryParamsResponse) ProtoMethods() *protoiface.Methods }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*QueryParamsResponse) + x := input.Message.Interface().(*StoreStateDiff) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -8004,15 +9958,47 @@ func (x *fastReflection_QueryParamsResponse) ProtoMethods() *protoiface.Methods fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryParamsResponse: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: StoreStateDiff: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryParamsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: StoreStateDiff: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Params", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Entries", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -8039,10 +10025,8 @@ func (x *fastReflection_QueryParamsResponse) ProtoMethods() *protoiface.Methods if postIndex > l { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF } - if x.Params == nil { - x.Params = &Params{} - } - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Params); err != nil { + x.Entries = append(x.Entries, &StateEntry{}) + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Entries[len(x.Entries)-1]); err != nil { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err } iNdEx = postIndex @@ -8081,6 +10065,57 @@ func (x *fastReflection_QueryParamsResponse) ProtoMethods() *protoiface.Methods } } +var _ protoreflect.List = (*_EthCallRequest_6_list)(nil) + +type _EthCallRequest_6_list struct { + list *[]*StoreStateDiff +} + +func (x *_EthCallRequest_6_list) Len() int { + if x.list == nil { + return 0 + } + return len(*x.list) +} + +func (x *_EthCallRequest_6_list) Get(i int) protoreflect.Value { + return protoreflect.ValueOfMessage((*x.list)[i].ProtoReflect()) +} + +func (x *_EthCallRequest_6_list) Set(i int, value protoreflect.Value) { + valueUnwrapped := value.Message() + concreteValue := valueUnwrapped.Interface().(*StoreStateDiff) + (*x.list)[i] = concreteValue +} + +func (x *_EthCallRequest_6_list) Append(value protoreflect.Value) { + valueUnwrapped := value.Message() + concreteValue := valueUnwrapped.Interface().(*StoreStateDiff) + *x.list = append(*x.list, concreteValue) +} + +func (x *_EthCallRequest_6_list) AppendMutable() protoreflect.Value { + v := new(StoreStateDiff) + *x.list = append(*x.list, v) + return protoreflect.ValueOfMessage(v.ProtoReflect()) +} + +func (x *_EthCallRequest_6_list) Truncate(n int) { + for i := n; i < len(*x.list); i++ { + (*x.list)[i] = nil + } + *x.list = (*x.list)[:n] +} + +func (x *_EthCallRequest_6_list) NewElement() protoreflect.Value { + v := new(StoreStateDiff) + return protoreflect.ValueOfMessage(v.ProtoReflect()) +} + +func (x *_EthCallRequest_6_list) IsValid() bool { + return x.list != nil +} + var ( md_EthCallRequest protoreflect.MessageDescriptor fd_EthCallRequest_args protoreflect.FieldDescriptor @@ -8088,6 +10123,7 @@ var ( fd_EthCallRequest_proposer_address protoreflect.FieldDescriptor fd_EthCallRequest_chain_id protoreflect.FieldDescriptor fd_EthCallRequest_overrides protoreflect.FieldDescriptor + fd_EthCallRequest_state_overrides protoreflect.FieldDescriptor ) func init() { @@ -8098,6 +10134,7 @@ func init() { fd_EthCallRequest_proposer_address = md_EthCallRequest.Fields().ByName("proposer_address") fd_EthCallRequest_chain_id = md_EthCallRequest.Fields().ByName("chain_id") fd_EthCallRequest_overrides = md_EthCallRequest.Fields().ByName("overrides") + fd_EthCallRequest_state_overrides = md_EthCallRequest.Fields().ByName("state_overrides") } var _ protoreflect.Message = (*fastReflection_EthCallRequest)(nil) @@ -8109,7 +10146,7 @@ func (x *EthCallRequest) ProtoReflect() protoreflect.Message { } func (x *EthCallRequest) slowProtoReflect() protoreflect.Message { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[18] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8195,6 +10232,12 @@ func (x *fastReflection_EthCallRequest) Range(f func(protoreflect.FieldDescripto return } } + if len(x.StateOverrides) != 0 { + value := protoreflect.ValueOfList(&_EthCallRequest_6_list{list: &x.StateOverrides}) + if !f(fd_EthCallRequest_state_overrides, value) { + return + } + } } // Has reports whether a field is populated. @@ -8220,6 +10263,8 @@ func (x *fastReflection_EthCallRequest) Has(fd protoreflect.FieldDescriptor) boo return x.ChainId != int64(0) case "cosmos.evm.vm.v1.EthCallRequest.overrides": return len(x.Overrides) != 0 + case "cosmos.evm.vm.v1.EthCallRequest.state_overrides": + return len(x.StateOverrides) != 0 default: if fd.IsExtension() { panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.EthCallRequest")) @@ -8246,6 +10291,8 @@ func (x *fastReflection_EthCallRequest) Clear(fd protoreflect.FieldDescriptor) { x.ChainId = int64(0) case "cosmos.evm.vm.v1.EthCallRequest.overrides": x.Overrides = nil + case "cosmos.evm.vm.v1.EthCallRequest.state_overrides": + x.StateOverrides = nil default: if fd.IsExtension() { panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.EthCallRequest")) @@ -8277,6 +10324,12 @@ func (x *fastReflection_EthCallRequest) Get(descriptor protoreflect.FieldDescrip case "cosmos.evm.vm.v1.EthCallRequest.overrides": value := x.Overrides return protoreflect.ValueOfBytes(value) + case "cosmos.evm.vm.v1.EthCallRequest.state_overrides": + if len(x.StateOverrides) == 0 { + return protoreflect.ValueOfList(&_EthCallRequest_6_list{}) + } + listValue := &_EthCallRequest_6_list{list: &x.StateOverrides} + return protoreflect.ValueOfList(listValue) default: if descriptor.IsExtension() { panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.EthCallRequest")) @@ -8307,6 +10360,10 @@ func (x *fastReflection_EthCallRequest) Set(fd protoreflect.FieldDescriptor, val x.ChainId = value.Int() case "cosmos.evm.vm.v1.EthCallRequest.overrides": x.Overrides = value.Bytes() + case "cosmos.evm.vm.v1.EthCallRequest.state_overrides": + lv := value.List() + clv := lv.(*_EthCallRequest_6_list) + x.StateOverrides = *clv.list default: if fd.IsExtension() { panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.EthCallRequest")) @@ -8327,6 +10384,12 @@ func (x *fastReflection_EthCallRequest) Set(fd protoreflect.FieldDescriptor, val // Mutable is a mutating operation and unsafe for concurrent use. func (x *fastReflection_EthCallRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { + case "cosmos.evm.vm.v1.EthCallRequest.state_overrides": + if x.StateOverrides == nil { + x.StateOverrides = []*StoreStateDiff{} + } + value := &_EthCallRequest_6_list{list: &x.StateOverrides} + return protoreflect.ValueOfList(value) case "cosmos.evm.vm.v1.EthCallRequest.args": panic(fmt.Errorf("field args of message cosmos.evm.vm.v1.EthCallRequest is not mutable")) case "cosmos.evm.vm.v1.EthCallRequest.gas_cap": @@ -8360,6 +10423,9 @@ func (x *fastReflection_EthCallRequest) NewField(fd protoreflect.FieldDescriptor return protoreflect.ValueOfInt64(int64(0)) case "cosmos.evm.vm.v1.EthCallRequest.overrides": return protoreflect.ValueOfBytes(nil) + case "cosmos.evm.vm.v1.EthCallRequest.state_overrides": + list := []*StoreStateDiff{} + return protoreflect.ValueOfList(&_EthCallRequest_6_list{list: &list}) default: if fd.IsExtension() { panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.EthCallRequest")) @@ -8447,6 +10513,12 @@ func (x *fastReflection_EthCallRequest) ProtoMethods() *protoiface.Methods { if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } + if len(x.StateOverrides) > 0 { + for _, e := range x.StateOverrides { + l = options.Size(e) + n += 1 + l + runtime.Sov(uint64(l)) + } + } if x.unknownFields != nil { n += len(x.unknownFields) } @@ -8476,6 +10548,22 @@ func (x *fastReflection_EthCallRequest) ProtoMethods() *protoiface.Methods { i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } + if len(x.StateOverrides) > 0 { + for iNdEx := len(x.StateOverrides) - 1; iNdEx >= 0; iNdEx-- { + encoded, err := options.Marshal(x.StateOverrides[iNdEx]) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x32 + } + } if len(x.Overrides) > 0 { i -= len(x.Overrides) copy(dAtA[i:], x.Overrides) @@ -8696,6 +10784,40 @@ func (x *fastReflection_EthCallRequest) ProtoMethods() *protoiface.Methods { x.Overrides = []byte{} } iNdEx = postIndex + case 6: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field StateOverrides", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.StateOverrides = append(x.StateOverrides, &StoreStateDiff{}) + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.StateOverrides[len(x.StateOverrides)-1]); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := runtime.Skip(dAtA[iNdEx:]) @@ -8755,7 +10877,7 @@ func (x *EstimateGasResponse) ProtoReflect() protoreflect.Message { } func (x *EstimateGasResponse) slowProtoReflect() protoreflect.Message { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[19] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9352,7 +11474,7 @@ func (x *QueryTraceTxRequest) ProtoReflect() protoreflect.Message { } func (x *QueryTraceTxRequest) slowProtoReflect() protoreflect.Message { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[20] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10290,7 +12412,7 @@ func (x *QueryTraceTxResponse) ProtoReflect() protoreflect.Message { } func (x *QueryTraceTxResponse) slowProtoReflect() protoreflect.Message { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[21] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10777,7 +12899,7 @@ func (x *QueryTraceBlockRequest) ProtoReflect() protoreflect.Message { } func (x *QueryTraceBlockRequest) slowProtoReflect() protoreflect.Message { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[22] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11638,7 +13760,7 @@ func (x *QueryTraceBlockResponse) ProtoReflect() protoreflect.Message { } func (x *QueryTraceBlockResponse) slowProtoReflect() protoreflect.Message { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[23] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12074,7 +14196,7 @@ func (x *QueryTraceCallRequest) ProtoReflect() protoreflect.Message { } func (x *QueryTraceCallRequest) slowProtoReflect() protoreflect.Message { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[24] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12914,7 +15036,7 @@ func (x *QueryTraceCallResponse) ProtoReflect() protoreflect.Message { } func (x *QueryTraceCallResponse) slowProtoReflect() protoreflect.Message { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[25] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13334,7 +15456,7 @@ func (x *QueryBaseFeeRequest) ProtoReflect() protoreflect.Message { } func (x *QueryBaseFeeRequest) slowProtoReflect() protoreflect.Message { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[26] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13692,7 +15814,7 @@ func (x *QueryBaseFeeResponse) ProtoReflect() protoreflect.Message { } func (x *QueryBaseFeeResponse) slowProtoReflect() protoreflect.Message { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[27] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14110,7 +16232,7 @@ func (x *QueryGlobalMinGasPriceRequest) ProtoReflect() protoreflect.Message { } func (x *QueryGlobalMinGasPriceRequest) slowProtoReflect() protoreflect.Message { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[28] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[32] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14468,7 +16590,7 @@ func (x *QueryGlobalMinGasPriceResponse) ProtoReflect() protoreflect.Message { } func (x *QueryGlobalMinGasPriceResponse) slowProtoReflect() protoreflect.Message { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[29] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14945,6 +17067,89 @@ func (x *QueryConfigResponse) GetConfig() *ChainConfig { return nil } +// QueryPrecompileRequest defines the request type for querying if an address is a precompile +type QueryPrecompileRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // address is the ethereum hex address to check + Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` +} + +func (x *QueryPrecompileRequest) Reset() { + *x = QueryPrecompileRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *QueryPrecompileRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*QueryPrecompileRequest) ProtoMessage() {} + +// Deprecated: Use QueryPrecompileRequest.ProtoReflect.Descriptor instead. +func (*QueryPrecompileRequest) Descriptor() ([]byte, []int) { + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{2} +} + +func (x *QueryPrecompileRequest) GetAddress() string { + if x != nil { + return x.Address + } + return "" +} + +// QueryPrecompileResponse returns information about whether the address is a precompile +type QueryPrecompileResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // is_precompile indicates if the address is a precompile contract + IsPrecompile bool `protobuf:"varint,1,opt,name=is_precompile,json=isPrecompile,proto3" json:"is_precompile,omitempty"` + // is_static indicates if it's a static precompile (true) or dynamic precompile (false) + IsStatic bool `protobuf:"varint,2,opt,name=is_static,json=isStatic,proto3" json:"is_static,omitempty"` +} + +func (x *QueryPrecompileResponse) Reset() { + *x = QueryPrecompileResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *QueryPrecompileResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*QueryPrecompileResponse) ProtoMessage() {} + +// Deprecated: Use QueryPrecompileResponse.ProtoReflect.Descriptor instead. +func (*QueryPrecompileResponse) Descriptor() ([]byte, []int) { + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{3} +} + +func (x *QueryPrecompileResponse) GetIsPrecompile() bool { + if x != nil { + return x.IsPrecompile + } + return false +} + +func (x *QueryPrecompileResponse) GetIsStatic() bool { + if x != nil { + return x.IsStatic + } + return false +} + // QueryAccountRequest is the request type for the Query/Account RPC method. type QueryAccountRequest struct { state protoimpl.MessageState @@ -14958,7 +17163,7 @@ type QueryAccountRequest struct { func (x *QueryAccountRequest) Reset() { *x = QueryAccountRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[2] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14972,7 +17177,7 @@ func (*QueryAccountRequest) ProtoMessage() {} // Deprecated: Use QueryAccountRequest.ProtoReflect.Descriptor instead. func (*QueryAccountRequest) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{2} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{4} } func (x *QueryAccountRequest) GetAddress() string { @@ -14999,7 +17204,7 @@ type QueryAccountResponse struct { func (x *QueryAccountResponse) Reset() { *x = QueryAccountResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[3] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15013,7 +17218,7 @@ func (*QueryAccountResponse) ProtoMessage() {} // Deprecated: Use QueryAccountResponse.ProtoReflect.Descriptor instead. func (*QueryAccountResponse) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{3} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{5} } func (x *QueryAccountResponse) GetBalance() string { @@ -15051,7 +17256,7 @@ type QueryCosmosAccountRequest struct { func (x *QueryCosmosAccountRequest) Reset() { *x = QueryCosmosAccountRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[4] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15065,7 +17270,7 @@ func (*QueryCosmosAccountRequest) ProtoMessage() {} // Deprecated: Use QueryCosmosAccountRequest.ProtoReflect.Descriptor instead. func (*QueryCosmosAccountRequest) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{4} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{6} } func (x *QueryCosmosAccountRequest) GetAddress() string { @@ -15093,7 +17298,7 @@ type QueryCosmosAccountResponse struct { func (x *QueryCosmosAccountResponse) Reset() { *x = QueryCosmosAccountResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[5] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15107,7 +17312,7 @@ func (*QueryCosmosAccountResponse) ProtoMessage() {} // Deprecated: Use QueryCosmosAccountResponse.ProtoReflect.Descriptor instead. func (*QueryCosmosAccountResponse) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{5} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{7} } func (x *QueryCosmosAccountResponse) GetCosmosAddress() string { @@ -15145,7 +17350,7 @@ type QueryValidatorAccountRequest struct { func (x *QueryValidatorAccountRequest) Reset() { *x = QueryValidatorAccountRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[6] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15159,7 +17364,7 @@ func (*QueryValidatorAccountRequest) ProtoMessage() {} // Deprecated: Use QueryValidatorAccountRequest.ProtoReflect.Descriptor instead. func (*QueryValidatorAccountRequest) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{6} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{8} } func (x *QueryValidatorAccountRequest) GetConsAddress() string { @@ -15187,7 +17392,7 @@ type QueryValidatorAccountResponse struct { func (x *QueryValidatorAccountResponse) Reset() { *x = QueryValidatorAccountResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[7] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15201,7 +17406,7 @@ func (*QueryValidatorAccountResponse) ProtoMessage() {} // Deprecated: Use QueryValidatorAccountResponse.ProtoReflect.Descriptor instead. func (*QueryValidatorAccountResponse) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{7} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{9} } func (x *QueryValidatorAccountResponse) GetAccountAddress() string { @@ -15238,7 +17443,7 @@ type QueryBalanceRequest struct { func (x *QueryBalanceRequest) Reset() { *x = QueryBalanceRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[8] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15252,7 +17457,7 @@ func (*QueryBalanceRequest) ProtoMessage() {} // Deprecated: Use QueryBalanceRequest.ProtoReflect.Descriptor instead. func (*QueryBalanceRequest) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{8} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{10} } func (x *QueryBalanceRequest) GetAddress() string { @@ -15275,7 +17480,7 @@ type QueryBalanceResponse struct { func (x *QueryBalanceResponse) Reset() { *x = QueryBalanceResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[9] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15289,7 +17494,7 @@ func (*QueryBalanceResponse) ProtoMessage() {} // Deprecated: Use QueryBalanceResponse.ProtoReflect.Descriptor instead. func (*QueryBalanceResponse) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{9} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{11} } func (x *QueryBalanceResponse) GetBalance() string { @@ -15314,7 +17519,7 @@ type QueryStorageRequest struct { func (x *QueryStorageRequest) Reset() { *x = QueryStorageRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[10] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15328,7 +17533,7 @@ func (*QueryStorageRequest) ProtoMessage() {} // Deprecated: Use QueryStorageRequest.ProtoReflect.Descriptor instead. func (*QueryStorageRequest) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{10} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{12} } func (x *QueryStorageRequest) GetAddress() string { @@ -15359,7 +17564,7 @@ type QueryStorageResponse struct { func (x *QueryStorageResponse) Reset() { *x = QueryStorageResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[11] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15373,7 +17578,7 @@ func (*QueryStorageResponse) ProtoMessage() {} // Deprecated: Use QueryStorageResponse.ProtoReflect.Descriptor instead. func (*QueryStorageResponse) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{11} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{13} } func (x *QueryStorageResponse) GetValue() string { @@ -15396,7 +17601,7 @@ type QueryCodeRequest struct { func (x *QueryCodeRequest) Reset() { *x = QueryCodeRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[12] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15410,7 +17615,7 @@ func (*QueryCodeRequest) ProtoMessage() {} // Deprecated: Use QueryCodeRequest.ProtoReflect.Descriptor instead. func (*QueryCodeRequest) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{12} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{14} } func (x *QueryCodeRequest) GetAddress() string { @@ -15434,7 +17639,7 @@ type QueryCodeResponse struct { func (x *QueryCodeResponse) Reset() { *x = QueryCodeResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[13] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15448,7 +17653,7 @@ func (*QueryCodeResponse) ProtoMessage() {} // Deprecated: Use QueryCodeResponse.ProtoReflect.Descriptor instead. func (*QueryCodeResponse) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{13} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{15} } func (x *QueryCodeResponse) GetCode() []byte { @@ -15473,7 +17678,7 @@ type QueryTxLogsRequest struct { func (x *QueryTxLogsRequest) Reset() { *x = QueryTxLogsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[14] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15487,7 +17692,7 @@ func (*QueryTxLogsRequest) ProtoMessage() {} // Deprecated: Use QueryTxLogsRequest.ProtoReflect.Descriptor instead. func (*QueryTxLogsRequest) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{14} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{16} } func (x *QueryTxLogsRequest) GetHash() string { @@ -15519,7 +17724,7 @@ type QueryTxLogsResponse struct { func (x *QueryTxLogsResponse) Reset() { *x = QueryTxLogsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[15] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15533,7 +17738,7 @@ func (*QueryTxLogsResponse) ProtoMessage() {} // Deprecated: Use QueryTxLogsResponse.ProtoReflect.Descriptor instead. func (*QueryTxLogsResponse) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{15} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{17} } func (x *QueryTxLogsResponse) GetLogs() []*Log { @@ -15560,7 +17765,7 @@ type QueryParamsRequest struct { func (x *QueryParamsRequest) Reset() { *x = QueryParamsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[16] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15574,7 +17779,7 @@ func (*QueryParamsRequest) ProtoMessage() {} // Deprecated: Use QueryParamsRequest.ProtoReflect.Descriptor instead. func (*QueryParamsRequest) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{16} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{18} } // QueryParamsResponse defines the response type for querying x/vm parameters. @@ -15590,7 +17795,7 @@ type QueryParamsResponse struct { func (x *QueryParamsResponse) Reset() { *x = QueryParamsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[17] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15604,7 +17809,7 @@ func (*QueryParamsResponse) ProtoMessage() {} // Deprecated: Use QueryParamsResponse.ProtoReflect.Descriptor instead. func (*QueryParamsResponse) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{17} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{19} } func (x *QueryParamsResponse) GetParams() *Params { @@ -15614,6 +17819,102 @@ func (x *QueryParamsResponse) GetParams() *Params { return nil } +// StateEntry defines a single state change operation +type StateEntry struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Key []byte `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` + Value []byte `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` + Delete bool `protobuf:"varint,3,opt,name=delete,proto3" json:"delete,omitempty"` +} + +func (x *StateEntry) Reset() { + *x = StateEntry{} + if protoimpl.UnsafeEnabled { + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[20] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *StateEntry) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*StateEntry) ProtoMessage() {} + +// Deprecated: Use StateEntry.ProtoReflect.Descriptor instead. +func (*StateEntry) Descriptor() ([]byte, []int) { + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{20} +} + +func (x *StateEntry) GetKey() []byte { + if x != nil { + return x.Key + } + return nil +} + +func (x *StateEntry) GetValue() []byte { + if x != nil { + return x.Value + } + return nil +} + +func (x *StateEntry) GetDelete() bool { + if x != nil { + return x.Delete + } + return false +} + +// StoreStateDiff defines a set of state changes for a single store +type StoreStateDiff struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Entries []*StateEntry `protobuf:"bytes,2,rep,name=entries,proto3" json:"entries,omitempty"` +} + +func (x *StoreStateDiff) Reset() { + *x = StoreStateDiff{} + if protoimpl.UnsafeEnabled { + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[21] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *StoreStateDiff) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*StoreStateDiff) ProtoMessage() {} + +// Deprecated: Use StoreStateDiff.ProtoReflect.Descriptor instead. +func (*StoreStateDiff) Descriptor() ([]byte, []int) { + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{21} +} + +func (x *StoreStateDiff) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *StoreStateDiff) GetEntries() []*StateEntry { + if x != nil { + return x.Entries + } + return nil +} + // EthCallRequest defines EthCall request type EthCallRequest struct { state protoimpl.MessageState @@ -15630,12 +17931,14 @@ type EthCallRequest struct { ChainId int64 `protobuf:"varint,4,opt,name=chain_id,json=chainId,proto3" json:"chain_id,omitempty"` // state overrides encoded as json Overrides []byte `protobuf:"bytes,5,opt,name=overrides,proto3" json:"overrides,omitempty"` + // state_overrides represents the state overrides before executing the call + StateOverrides []*StoreStateDiff `protobuf:"bytes,6,rep,name=state_overrides,json=stateOverrides,proto3" json:"state_overrides,omitempty"` } func (x *EthCallRequest) Reset() { *x = EthCallRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[18] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15649,7 +17952,7 @@ func (*EthCallRequest) ProtoMessage() {} // Deprecated: Use EthCallRequest.ProtoReflect.Descriptor instead. func (*EthCallRequest) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{18} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{22} } func (x *EthCallRequest) GetArgs() []byte { @@ -15687,6 +17990,13 @@ func (x *EthCallRequest) GetOverrides() []byte { return nil } +func (x *EthCallRequest) GetStateOverrides() []*StoreStateDiff { + if x != nil { + return x.StateOverrides + } + return nil +} + // EstimateGasResponse defines EstimateGas response type EstimateGasResponse struct { state protoimpl.MessageState @@ -15705,7 +18015,7 @@ type EstimateGasResponse struct { func (x *EstimateGasResponse) Reset() { *x = EstimateGasResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[19] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15719,7 +18029,7 @@ func (*EstimateGasResponse) ProtoMessage() {} // Deprecated: Use EstimateGasResponse.ProtoReflect.Descriptor instead. func (*EstimateGasResponse) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{19} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{23} } func (x *EstimateGasResponse) GetGas() uint64 { @@ -15773,7 +18083,7 @@ type QueryTraceTxRequest struct { func (x *QueryTraceTxRequest) Reset() { *x = QueryTraceTxRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[20] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15787,7 +18097,7 @@ func (*QueryTraceTxRequest) ProtoMessage() {} // Deprecated: Use QueryTraceTxRequest.ProtoReflect.Descriptor instead. func (*QueryTraceTxRequest) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{20} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{24} } func (x *QueryTraceTxRequest) GetMsg() *MsgEthereumTx { @@ -15866,7 +18176,7 @@ type QueryTraceTxResponse struct { func (x *QueryTraceTxResponse) Reset() { *x = QueryTraceTxResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[21] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15880,7 +18190,7 @@ func (*QueryTraceTxResponse) ProtoMessage() {} // Deprecated: Use QueryTraceTxResponse.ProtoReflect.Descriptor instead. func (*QueryTraceTxResponse) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{21} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{25} } func (x *QueryTraceTxResponse) GetData() []byte { @@ -15917,7 +18227,7 @@ type QueryTraceBlockRequest struct { func (x *QueryTraceBlockRequest) Reset() { *x = QueryTraceBlockRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[22] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15931,7 +18241,7 @@ func (*QueryTraceBlockRequest) ProtoMessage() {} // Deprecated: Use QueryTraceBlockRequest.ProtoReflect.Descriptor instead. func (*QueryTraceBlockRequest) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{22} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{26} } func (x *QueryTraceBlockRequest) GetTxs() []*MsgEthereumTx { @@ -16003,7 +18313,7 @@ type QueryTraceBlockResponse struct { func (x *QueryTraceBlockResponse) Reset() { *x = QueryTraceBlockResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[23] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16017,7 +18327,7 @@ func (*QueryTraceBlockResponse) ProtoMessage() {} // Deprecated: Use QueryTraceBlockResponse.ProtoReflect.Descriptor instead. func (*QueryTraceBlockResponse) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{23} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{27} } func (x *QueryTraceBlockResponse) GetData() []byte { @@ -16054,7 +18364,7 @@ type QueryTraceCallRequest struct { func (x *QueryTraceCallRequest) Reset() { *x = QueryTraceCallRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[24] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16068,7 +18378,7 @@ func (*QueryTraceCallRequest) ProtoMessage() {} // Deprecated: Use QueryTraceCallRequest.ProtoReflect.Descriptor instead. func (*QueryTraceCallRequest) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{24} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{28} } func (x *QueryTraceCallRequest) GetArgs() []byte { @@ -16140,7 +18450,7 @@ type QueryTraceCallResponse struct { func (x *QueryTraceCallResponse) Reset() { *x = QueryTraceCallResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[25] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16154,7 +18464,7 @@ func (*QueryTraceCallResponse) ProtoMessage() {} // Deprecated: Use QueryTraceCallResponse.ProtoReflect.Descriptor instead. func (*QueryTraceCallResponse) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{25} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{29} } func (x *QueryTraceCallResponse) GetData() []byte { @@ -16175,7 +18485,7 @@ type QueryBaseFeeRequest struct { func (x *QueryBaseFeeRequest) Reset() { *x = QueryBaseFeeRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[26] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16189,7 +18499,7 @@ func (*QueryBaseFeeRequest) ProtoMessage() {} // Deprecated: Use QueryBaseFeeRequest.ProtoReflect.Descriptor instead. func (*QueryBaseFeeRequest) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{26} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{30} } // QueryBaseFeeResponse returns the EIP1559 base fee. @@ -16205,7 +18515,7 @@ type QueryBaseFeeResponse struct { func (x *QueryBaseFeeResponse) Reset() { *x = QueryBaseFeeResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[27] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16219,7 +18529,7 @@ func (*QueryBaseFeeResponse) ProtoMessage() {} // Deprecated: Use QueryBaseFeeResponse.ProtoReflect.Descriptor instead. func (*QueryBaseFeeResponse) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{27} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{31} } func (x *QueryBaseFeeResponse) GetBaseFee() string { @@ -16240,7 +18550,7 @@ type QueryGlobalMinGasPriceRequest struct { func (x *QueryGlobalMinGasPriceRequest) Reset() { *x = QueryGlobalMinGasPriceRequest{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[28] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16254,7 +18564,7 @@ func (*QueryGlobalMinGasPriceRequest) ProtoMessage() {} // Deprecated: Use QueryGlobalMinGasPriceRequest.ProtoReflect.Descriptor instead. func (*QueryGlobalMinGasPriceRequest) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{28} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{32} } // QueryGlobalMinGasPriceResponse returns the GlobalMinGasPrice @@ -16270,7 +18580,7 @@ type QueryGlobalMinGasPriceResponse struct { func (x *QueryGlobalMinGasPriceResponse) Reset() { *x = QueryGlobalMinGasPriceResponse{} if protoimpl.UnsafeEnabled { - mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[29] + mi := &file_cosmos_evm_vm_v1_query_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16284,7 +18594,7 @@ func (*QueryGlobalMinGasPriceResponse) ProtoMessage() {} // Deprecated: Use QueryGlobalMinGasPriceResponse.ProtoReflect.Descriptor instead. func (*QueryGlobalMinGasPriceResponse) Descriptor() ([]byte, []int) { - return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{29} + return file_cosmos_evm_vm_v1_query_proto_rawDescGZIP(), []int{33} } func (x *QueryGlobalMinGasPriceResponse) GetMinGasPrice() string { @@ -16319,354 +18629,389 @@ var file_cosmos_evm_vm_v1_query_proto_rawDesc = []byte{ 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, - 0x39, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, - 0x3a, 0x08, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x63, 0x0a, 0x14, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1b, 0x0a, 0x09, - 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x63, 0x6f, 0x64, 0x65, 0x48, 0x61, 0x73, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, - 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x22, - 0x3f, 0x0a, 0x19, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, + 0x32, 0x0a, 0x16, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x70, 0x69, + 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x22, 0x5b, 0x0a, 0x17, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x72, 0x65, 0x63, + 0x6f, 0x6d, 0x70, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x23, + 0x0a, 0x0d, 0x69, 0x73, 0x5f, 0x70, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x70, 0x69, 0x6c, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x50, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x70, + 0x69, 0x6c, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x69, 0x63, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, + 0x22, 0x39, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x3a, 0x08, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x63, 0x0a, 0x14, 0x51, + 0x75, 0x65, 0x72, 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1b, 0x0a, + 0x09, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x63, 0x6f, 0x64, 0x65, 0x48, 0x61, 0x73, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, + 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, + 0x22, 0x3f, 0x0a, 0x19, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, + 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x08, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, + 0x00, 0x22, 0x86, 0x01, 0x0a, 0x1a, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x73, 0x6d, 0x6f, + 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, + 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x4b, 0x0a, 0x1c, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, + 0x6e, 0x73, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x08, 0x88, + 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x8b, 0x01, 0x0a, 0x1d, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x25, + 0x0a, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x39, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, + 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x08, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, - 0x22, 0x86, 0x01, 0x0a, 0x1a, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, - 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x41, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, - 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, - 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6e, 0x75, - 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x4b, 0x0a, 0x1c, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, - 0x73, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0b, 0x63, 0x6f, 0x6e, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x08, 0x88, 0xa0, - 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x8b, 0x01, 0x0a, 0x1d, 0x51, 0x75, 0x65, 0x72, 0x79, - 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x25, 0x0a, - 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x75, - 0x6d, 0x62, 0x65, 0x72, 0x22, 0x39, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x6c, - 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x08, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x22, - 0x30, 0x0a, 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, - 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, - 0x65, 0x22, 0x4b, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x03, 0x6b, 0x65, 0x79, 0x3a, 0x08, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x2c, - 0x0a, 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x36, 0x0a, 0x10, - 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x08, 0x88, 0xa0, 0x1f, 0x00, - 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x27, 0x0a, 0x11, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x64, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x22, 0x7a, 0x0a, - 0x12, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x78, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x46, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6f, - 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3a, - 0x08, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x89, 0x01, 0x0a, 0x13, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x54, 0x78, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x29, 0x0a, 0x04, 0x6c, 0x6f, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x15, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, - 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x52, 0x04, 0x6c, 0x6f, 0x67, 0x73, 0x12, 0x47, 0x0a, 0x0a, - 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x67, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x14, 0x0a, 0x12, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x52, 0x0a, 0x13, 0x51, - 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, - 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42, 0x09, 0xc8, 0xde, - 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, - 0xd5, 0x01, 0x0a, 0x0e, 0x45, 0x74, 0x68, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, - 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x67, 0x61, 0x73, 0x5f, 0x63, 0x61, - 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x67, 0x61, 0x73, 0x43, 0x61, 0x70, 0x12, + 0x22, 0x30, 0x0a, 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x61, 0x6c, 0x61, + 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, + 0x63, 0x65, 0x22, 0x4b, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x74, 0x6f, 0x72, 0x61, + 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x03, 0x6b, 0x65, 0x79, 0x3a, 0x08, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x22, + 0x2c, 0x0a, 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x36, 0x0a, + 0x10, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x08, 0x88, 0xa0, 0x1f, + 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x27, 0x0a, 0x11, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, + 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, + 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x22, 0x7a, + 0x0a, 0x12, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x78, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x46, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, + 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, + 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x3a, 0x08, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x89, 0x01, 0x0a, 0x13, 0x51, + 0x75, 0x65, 0x72, 0x79, 0x54, 0x78, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x29, 0x0a, 0x04, 0x6c, 0x6f, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x15, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, + 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x52, 0x04, 0x6c, 0x6f, 0x67, 0x73, 0x12, 0x47, 0x0a, + 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, + 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, + 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x14, 0x0a, 0x12, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, + 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x52, 0x0a, 0x13, + 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, + 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42, 0x09, 0xc8, + 0xde, 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, + 0x22, 0x4c, 0x0a, 0x0a, 0x53, 0x74, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, + 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x6b, 0x65, 0x79, + 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x22, 0x62, + 0x0a, 0x0e, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x44, 0x69, 0x66, 0x66, + 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3c, 0x0a, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, + 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, + 0x65, 0x73, 0x22, 0xa6, 0x02, 0x0a, 0x0e, 0x45, 0x74, 0x68, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0c, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x67, 0x61, 0x73, + 0x5f, 0x63, 0x61, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x67, 0x61, 0x73, 0x43, + 0x61, 0x70, 0x12, 0x5d, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x5f, 0x61, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x32, 0xfa, 0xde, + 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x74, + 0x79, 0x70, 0x65, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, + 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, + 0x09, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x12, 0x4f, 0x0a, 0x0f, 0x73, 0x74, + 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x18, 0x06, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, + 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, + 0x65, 0x44, 0x69, 0x66, 0x66, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x0e, 0x73, 0x74, 0x61, + 0x74, 0x65, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x22, 0x54, 0x0a, 0x13, 0x45, + 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x47, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x03, 0x67, 0x61, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0c, 0x52, 0x03, 0x72, 0x65, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x76, 0x6d, 0x5f, 0x65, 0x72, 0x72, + 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x6d, 0x45, 0x72, 0x72, 0x6f, + 0x72, 0x22, 0x89, 0x04, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, + 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x03, 0x6d, 0x73, 0x67, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, + 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x45, 0x74, 0x68, + 0x65, 0x72, 0x65, 0x75, 0x6d, 0x54, 0x78, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x40, 0x0a, 0x0c, + 0x74, 0x72, 0x61, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, + 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x52, 0x0b, 0x74, 0x72, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x43, + 0x0a, 0x0c, 0x70, 0x72, 0x65, 0x64, 0x65, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x18, 0x04, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, + 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x45, 0x74, 0x68, 0x65, 0x72, + 0x65, 0x75, 0x6d, 0x54, 0x78, 0x52, 0x0c, 0x70, 0x72, 0x65, 0x64, 0x65, 0x63, 0x65, 0x73, 0x73, + 0x6f, 0x72, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, + 0x62, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, + 0x68, 0x61, 0x73, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, + 0x6b, 0x48, 0x61, 0x73, 0x68, 0x12, 0x48, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x74, + 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, + 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x0d, 0xc8, 0xde, 0x1f, 0x00, 0x90, 0xdf, 0x1f, 0x01, 0xa8, + 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x5d, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x32, 0xfa, 0xde, 0x1f, 0x2e, 0x67, + 0x65, 0x73, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x32, 0xfa, 0xde, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x19, - 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6f, 0x76, 0x65, - 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x6f, 0x76, - 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x22, 0x54, 0x0a, 0x13, 0x45, 0x73, 0x74, 0x69, 0x6d, - 0x61, 0x74, 0x65, 0x47, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x10, - 0x0a, 0x03, 0x67, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x67, 0x61, 0x73, - 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x72, - 0x65, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x76, 0x6d, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x6d, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x89, 0x04, - 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x54, 0x78, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, - 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x45, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, - 0x6d, 0x54, 0x78, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x40, 0x0a, 0x0c, 0x74, 0x72, 0x61, 0x63, - 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, - 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, - 0x31, 0x2e, 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b, 0x74, - 0x72, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x43, 0x0a, 0x0c, 0x70, 0x72, - 0x65, 0x64, 0x65, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x1f, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, - 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x45, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x54, - 0x78, 0x52, 0x0c, 0x70, 0x72, 0x65, 0x64, 0x65, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x12, - 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, - 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x61, 0x73, 0x68, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, - 0x68, 0x12, 0x48, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, - 0x70, 0x42, 0x0d, 0xc8, 0xde, 0x1f, 0x00, 0x90, 0xdf, 0x1f, 0x01, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, - 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x5d, 0x0a, 0x10, 0x70, - 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x32, 0xfa, 0xde, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, - 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x63, 0x6f, 0x73, - 0x6d, 0x6f, 0x73, 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x43, 0x6f, - 0x6e, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x70, 0x6f, - 0x73, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6d, - 0x61, 0x78, 0x5f, 0x67, 0x61, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x62, 0x6c, - 0x6f, 0x63, 0x6b, 0x4d, 0x61, 0x78, 0x47, 0x61, 0x73, 0x4a, 0x04, 0x08, 0x02, 0x10, 0x03, 0x52, - 0x08, 0x74, 0x78, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x2a, 0x0a, 0x14, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, - 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xb7, 0x03, 0x0a, 0x16, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, - 0x72, 0x61, 0x63, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x31, 0x0a, 0x03, 0x74, 0x78, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, + 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x62, 0x6c, 0x6f, + 0x63, 0x6b, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x67, 0x61, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4d, 0x61, 0x78, 0x47, 0x61, 0x73, 0x4a, 0x04, 0x08, + 0x02, 0x10, 0x03, 0x52, 0x08, 0x74, 0x78, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x2a, 0x0a, + 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x54, 0x78, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xb7, 0x03, 0x0a, 0x16, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x03, 0x74, 0x78, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, + 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x45, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, + 0x54, 0x78, 0x52, 0x03, 0x74, 0x78, 0x73, 0x12, 0x40, 0x0a, 0x0c, 0x74, 0x72, 0x61, 0x63, 0x65, + 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, - 0x2e, 0x4d, 0x73, 0x67, 0x45, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x54, 0x78, 0x52, 0x03, - 0x74, 0x78, 0x73, 0x12, 0x40, 0x0a, 0x0c, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, - 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x61, - 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b, 0x74, 0x72, 0x61, 0x63, 0x65, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, - 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x62, 0x6c, 0x6f, - 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, - 0x6b, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x6c, - 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, 0x12, 0x48, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, - 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, - 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x0d, 0xc8, 0xde, 0x1f, 0x00, 0x90, 0xdf, 0x1f, - 0x01, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, - 0x65, 0x12, 0x5d, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x5f, 0x61, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x32, 0xfa, 0xde, 0x1f, - 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x73, 0x6d, - 0x6f, 0x73, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x74, 0x79, - 0x70, 0x65, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, - 0x0f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, - 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x62, - 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x67, 0x61, 0x73, 0x18, 0x0a, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4d, 0x61, 0x78, 0x47, 0x61, 0x73, 0x22, - 0x2d, 0x0a, 0x17, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x42, 0x6c, 0x6f, - 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x87, - 0x03, 0x0a, 0x15, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x61, 0x6c, - 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x17, 0x0a, 0x07, - 0x67, 0x61, 0x73, 0x5f, 0x63, 0x61, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x67, - 0x61, 0x73, 0x43, 0x61, 0x70, 0x12, 0x5d, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, - 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x42, + 0x2e, 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b, 0x74, 0x72, + 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, + 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, 0x12, 0x48, 0x0a, 0x0a, 0x62, + 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x0d, 0xc8, 0xde, 0x1f, + 0x00, 0x90, 0xdf, 0x1f, 0x01, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, + 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x5d, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, + 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x32, 0xfa, 0xde, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x41, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x12, 0x40, 0x0a, 0x0c, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5f, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6f, 0x73, - 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, - 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b, 0x74, 0x72, 0x61, 0x63, 0x65, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, - 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x62, 0x6c, - 0x6f, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, - 0x63, 0x6b, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, - 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, 0x12, 0x43, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, - 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, - 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x08, 0xc8, 0xde, 0x1f, 0x00, 0x90, 0xdf, - 0x1f, 0x01, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x19, 0x0a, - 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x22, 0x2c, 0x0a, 0x16, 0x51, 0x75, 0x65, 0x72, - 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, - 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x15, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, - 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x4c, 0x0a, - 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x19, 0xda, 0xde, 0x1f, 0x15, 0x63, 0x6f, 0x73, - 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x6d, 0x61, 0x74, 0x68, 0x2e, 0x49, - 0x6e, 0x74, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x22, 0x1f, 0x0a, 0x1d, 0x51, - 0x75, 0x65, 0x72, 0x79, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4d, 0x69, 0x6e, 0x47, 0x61, 0x73, - 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x63, 0x0a, 0x1e, - 0x51, 0x75, 0x65, 0x72, 0x79, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4d, 0x69, 0x6e, 0x47, 0x61, - 0x73, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x41, - 0x0a, 0x0d, 0x6d, 0x69, 0x6e, 0x5f, 0x67, 0x61, 0x73, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1d, 0xc8, 0xde, 0x1f, 0x00, 0xda, 0xde, 0x1f, 0x15, 0x63, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x6d, 0x61, 0x74, 0x68, - 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x47, 0x61, 0x73, 0x50, 0x72, 0x69, 0x63, - 0x65, 0x32, 0x91, 0x10, 0x0a, 0x05, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x85, 0x01, 0x0a, 0x07, - 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, - 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, - 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, + 0x72, 0x65, 0x73, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, + 0x22, 0x0a, 0x0d, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x67, 0x61, 0x73, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4d, 0x61, 0x78, + 0x47, 0x61, 0x73, 0x22, 0x2d, 0x0a, 0x17, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, + 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, + 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, + 0x74, 0x61, 0x22, 0x87, 0x03, 0x0a, 0x15, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, + 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, + 0x61, 0x72, 0x67, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, + 0x12, 0x17, 0x0a, 0x07, 0x67, 0x61, 0x73, 0x5f, 0x63, 0x61, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x06, 0x67, 0x61, 0x73, 0x43, 0x61, 0x70, 0x12, 0x5d, 0x0a, 0x10, 0x70, 0x72, 0x6f, + 0x70, 0x6f, 0x73, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0c, 0x42, 0x32, 0xfa, 0xde, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, + 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, + 0x73, 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x73, + 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, + 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x40, 0x0a, 0x0c, 0x74, 0x72, 0x61, 0x63, + 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, - 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x12, 0x23, - 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, - 0x31, 0x2f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2f, 0x7b, 0x61, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x7d, 0x12, 0x9e, 0x01, 0x0a, 0x0d, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2b, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, - 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, - 0x73, 0x6d, 0x6f, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, - 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x73, 0x6d, 0x6f, - 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x32, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2c, 0x12, 0x2a, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, - 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6f, 0x73, 0x6d, - 0x6f, 0x73, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2f, 0x7b, 0x61, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x7d, 0x12, 0xaf, 0x01, 0x0a, 0x10, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, - 0x6f, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2e, 0x2e, 0x63, 0x6f, 0x73, 0x6d, - 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x63, 0x6f, 0x73, 0x6d, - 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3a, 0x82, 0xd3, 0xe4, 0x93, - 0x02, 0x34, 0x12, 0x32, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, - 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x73, 0x5f, 0x61, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x7d, 0x12, 0x86, 0x01, 0x0a, 0x07, 0x42, 0x61, 0x6c, 0x61, 0x6e, - 0x63, 0x65, 0x12, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, - 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x6c, 0x61, 0x6e, - 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, - 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x2c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x26, 0x12, 0x24, 0x2f, 0x63, 0x6f, 0x73, 0x6d, - 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x6c, - 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x7d, 0x12, - 0x8b, 0x01, 0x0a, 0x07, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x12, 0x25, 0x2e, 0x63, 0x6f, + 0x31, 0x2e, 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b, 0x74, + 0x72, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, + 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1d, 0x0a, + 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, 0x12, 0x43, 0x0a, 0x0a, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x08, 0xc8, 0xde, + 0x1f, 0x00, 0x90, 0xdf, 0x1f, 0x01, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x22, 0x2c, 0x0a, 0x16, + 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x15, 0x0a, 0x13, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x42, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x22, 0x4c, 0x0a, 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x73, 0x65, 0x46, 0x65, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x08, 0x62, 0x61, 0x73, + 0x65, 0x5f, 0x66, 0x65, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x19, 0xda, 0xde, 0x1f, + 0x15, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x6d, 0x61, + 0x74, 0x68, 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x22, + 0x1f, 0x0a, 0x1d, 0x51, 0x75, 0x65, 0x72, 0x79, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4d, 0x69, + 0x6e, 0x47, 0x61, 0x73, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x22, 0x63, 0x0a, 0x1e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4d, + 0x69, 0x6e, 0x47, 0x61, 0x73, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x41, 0x0a, 0x0d, 0x6d, 0x69, 0x6e, 0x5f, 0x67, 0x61, 0x73, 0x5f, 0x70, 0x72, + 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1d, 0xc8, 0xde, 0x1f, 0x00, 0xda, + 0xde, 0x1f, 0x15, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, + 0x6d, 0x61, 0x74, 0x68, 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x47, 0x61, 0x73, + 0x50, 0x72, 0x69, 0x63, 0x65, 0x32, 0xa5, 0x11, 0x0a, 0x05, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, + 0x85, 0x01, 0x0a, 0x07, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, - 0x75, 0x65, 0x72, 0x79, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x75, 0x65, 0x72, 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, - 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x74, 0x6f, 0x72, 0x61, - 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x31, 0x82, 0xd3, 0xe4, 0x93, - 0x02, 0x2b, 0x12, 0x29, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, - 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2f, 0x7b, 0x61, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x7d, 0x2f, 0x7b, 0x6b, 0x65, 0x79, 0x7d, 0x12, 0x7a, 0x0a, - 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x22, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, - 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, - 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x63, 0x6f, 0x73, 0x6d, + 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2b, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x25, 0x12, 0x23, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, + 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2f, 0x7b, 0x61, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x7d, 0x12, 0x9e, 0x01, 0x0a, 0x0d, 0x43, 0x6f, 0x73, 0x6d, + 0x6f, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2b, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x29, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x23, 0x12, 0x21, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, - 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6f, 0x64, 0x65, 0x73, 0x2f, - 0x7b, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x7d, 0x12, 0x77, 0x0a, 0x06, 0x50, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x12, 0x24, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, - 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, + 0x72, 0x79, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, + 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, + 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x32, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2c, 0x12, 0x2a, 0x2f, 0x63, + 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, + 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2f, 0x7b, + 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x7d, 0x12, 0xaf, 0x01, 0x0a, 0x10, 0x56, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2e, 0x2e, + 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, + 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, + 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, + 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3a, + 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x34, 0x12, 0x32, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, + 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, + 0x73, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x7d, 0x12, 0x86, 0x01, 0x0a, 0x07, 0x42, + 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, + 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, + 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, + 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, + 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x26, 0x12, 0x24, 0x2f, + 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, + 0x2f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x61, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x7d, 0x12, 0x8b, 0x01, 0x0a, 0x07, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x12, + 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, + 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, + 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, + 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x31, + 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2b, 0x12, 0x29, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, + 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, + 0x65, 0x2f, 0x7b, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x7d, 0x2f, 0x7b, 0x6b, 0x65, 0x79, + 0x7d, 0x12, 0x7a, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x22, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x20, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1a, 0x12, 0x18, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, - 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x12, 0x78, 0x0a, 0x07, 0x45, 0x74, 0x68, 0x43, 0x61, 0x6c, 0x6c, 0x12, 0x20, 0x2e, + 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, - 0x2e, 0x45, 0x74, 0x68, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, - 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x45, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x54, 0x78, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x22, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, - 0x12, 0x1a, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, - 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x74, 0x68, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x12, 0x7e, 0x0a, 0x0b, - 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x47, 0x61, 0x73, 0x12, 0x20, 0x2e, 0x63, 0x6f, - 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x45, - 0x74, 0x68, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, + 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x29, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x23, 0x12, 0x21, 0x2f, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6f, + 0x64, 0x65, 0x73, 0x2f, 0x7b, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x7d, 0x12, 0x77, 0x0a, + 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x24, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, + 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, + 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, - 0x2e, 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x47, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x26, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x20, 0x12, 0x1e, 0x2f, 0x63, + 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x20, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1a, 0x12, 0x18, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, - 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x67, 0x61, 0x73, 0x12, 0x7c, 0x0a, 0x07, - 0x54, 0x72, 0x61, 0x63, 0x65, 0x54, 0x78, 0x12, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, + 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x78, 0x0a, 0x07, 0x45, 0x74, 0x68, 0x43, 0x61, 0x6c, + 0x6c, 0x12, 0x20, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, + 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x74, 0x68, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, + 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x45, 0x74, 0x68, 0x65, 0x72, 0x65, + 0x75, 0x6d, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x22, 0x82, 0xd3, + 0xe4, 0x93, 0x02, 0x1c, 0x12, 0x1a, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, + 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x74, 0x68, 0x5f, 0x63, 0x61, 0x6c, 0x6c, + 0x12, 0x7e, 0x0a, 0x0b, 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x47, 0x61, 0x73, 0x12, + 0x20, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, + 0x76, 0x31, 0x2e, 0x45, 0x74, 0x68, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, + 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x47, 0x61, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x26, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x20, + 0x12, 0x1e, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, + 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x67, 0x61, 0x73, + 0x12, 0x7c, 0x0a, 0x07, 0x54, 0x72, 0x61, 0x63, 0x65, 0x54, 0x78, 0x12, 0x25, 0x2e, 0x63, 0x6f, + 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, + 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, + 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, + 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x22, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x1c, 0x12, 0x1a, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, + 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5f, 0x74, 0x78, 0x12, 0x88, + 0x01, 0x0a, 0x0a, 0x54, 0x72, 0x61, 0x63, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x28, 0x2e, + 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, + 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, - 0x54, 0x72, 0x61, 0x63, 0x65, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, - 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, - 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x54, 0x78, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x22, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x12, 0x1a, - 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, - 0x31, 0x2f, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5f, 0x74, 0x78, 0x12, 0x88, 0x01, 0x0a, 0x0a, 0x54, - 0x72, 0x61, 0x63, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x28, 0x2e, 0x63, 0x6f, 0x73, 0x6d, - 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, - 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, - 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x25, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x12, 0x1d, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, - 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5f, - 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x84, 0x01, 0x0a, 0x09, 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, - 0x61, 0x6c, 0x6c, 0x12, 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, - 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, - 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x63, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, - 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x24, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1e, 0x12, 0x1c, - 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, - 0x31, 0x2f, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x12, 0x7c, 0x0a, 0x07, - 0x42, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x12, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, + 0x54, 0x72, 0x61, 0x63, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x25, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x12, 0x1d, 0x2f, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x72, + 0x61, 0x63, 0x65, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x84, 0x01, 0x0a, 0x09, 0x54, 0x72, + 0x61, 0x63, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x12, 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, - 0x42, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, + 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x28, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, + 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x61, + 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x24, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x1e, 0x12, 0x1c, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, + 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x6c, + 0x12, 0x7c, 0x0a, 0x07, 0x42, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x12, 0x25, 0x2e, 0x63, 0x6f, + 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, + 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, + 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x73, 0x65, 0x46, + 0x65, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x22, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x1c, 0x12, 0x1a, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, + 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x12, 0x77, + 0x0a, 0x06, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x24, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, + 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, - 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x22, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x12, 0x1a, - 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, - 0x31, 0x2f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x12, 0x77, 0x0a, 0x06, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x12, 0x24, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, - 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x63, 0x6f, 0x73, - 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x20, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1a, 0x12, 0x18, 0x2f, 0x63, 0x6f, 0x73, 0x6d, - 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x12, 0x9f, 0x01, 0x0a, 0x11, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4d, 0x69, - 0x6e, 0x47, 0x61, 0x73, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x2f, 0x2e, 0x63, 0x6f, 0x73, 0x6d, - 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4d, 0x69, 0x6e, 0x47, 0x61, 0x73, 0x50, 0x72, - 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x63, 0x6f, 0x73, - 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4d, 0x69, 0x6e, 0x47, 0x61, 0x73, 0x50, - 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x27, 0x82, 0xd3, - 0xe4, 0x93, 0x02, 0x21, 0x12, 0x1f, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, - 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x6d, 0x69, 0x6e, 0x5f, 0x67, 0x61, 0x73, 0x5f, - 0x70, 0x72, 0x69, 0x63, 0x65, 0x42, 0xad, 0x01, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x2e, 0x63, 0x6f, - 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x42, 0x0a, - 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x26, 0x63, 0x6f, - 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x3b, - 0x76, 0x6d, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x43, 0x45, 0x56, 0xaa, 0x02, 0x10, 0x43, 0x6f, 0x73, - 0x6d, 0x6f, 0x73, 0x2e, 0x45, 0x76, 0x6d, 0x2e, 0x56, 0x6d, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x10, - 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5c, 0x45, 0x76, 0x6d, 0x5c, 0x56, 0x6d, 0x5c, 0x56, 0x31, - 0xe2, 0x02, 0x1c, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5c, 0x45, 0x76, 0x6d, 0x5c, 0x56, 0x6d, - 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, - 0x02, 0x13, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x3a, 0x3a, 0x45, 0x76, 0x6d, 0x3a, 0x3a, 0x56, - 0x6d, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x20, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1a, 0x12, 0x18, 0x2f, + 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, + 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x91, 0x01, 0x0a, 0x0a, 0x50, 0x72, 0x65, 0x63, + 0x6f, 0x6d, 0x70, 0x69, 0x6c, 0x65, 0x12, 0x28, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, + 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, + 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x70, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x29, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, + 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x70, + 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2e, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x28, 0x12, 0x26, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, + 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x70, 0x69, 0x6c, + 0x65, 0x2f, 0x7b, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x7d, 0x12, 0x9f, 0x01, 0x0a, 0x11, + 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4d, 0x69, 0x6e, 0x47, 0x61, 0x73, 0x50, 0x72, 0x69, 0x63, + 0x65, 0x12, 0x2f, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, + 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, + 0x4d, 0x69, 0x6e, 0x47, 0x61, 0x73, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, + 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x47, 0x6c, 0x6f, 0x62, 0x61, + 0x6c, 0x4d, 0x69, 0x6e, 0x47, 0x61, 0x73, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x27, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x21, 0x12, 0x1f, 0x2f, 0x63, + 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, + 0x6d, 0x69, 0x6e, 0x5f, 0x67, 0x61, 0x73, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x42, 0xad, 0x01, + 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, + 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x42, 0x0a, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x26, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, + 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, + 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x3b, 0x76, 0x6d, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x43, + 0x45, 0x56, 0xaa, 0x02, 0x10, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x45, 0x76, 0x6d, 0x2e, + 0x56, 0x6d, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x10, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5c, 0x45, + 0x76, 0x6d, 0x5c, 0x56, 0x6d, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1c, 0x43, 0x6f, 0x73, 0x6d, 0x6f, + 0x73, 0x5c, 0x45, 0x76, 0x6d, 0x5c, 0x56, 0x6d, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x13, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, + 0x3a, 0x3a, 0x45, 0x76, 0x6d, 0x3a, 0x3a, 0x56, 0x6d, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -16681,98 +19026,106 @@ func file_cosmos_evm_vm_v1_query_proto_rawDescGZIP() []byte { return file_cosmos_evm_vm_v1_query_proto_rawDescData } -var file_cosmos_evm_vm_v1_query_proto_msgTypes = make([]protoimpl.MessageInfo, 30) +var file_cosmos_evm_vm_v1_query_proto_msgTypes = make([]protoimpl.MessageInfo, 34) var file_cosmos_evm_vm_v1_query_proto_goTypes = []interface{}{ (*QueryConfigRequest)(nil), // 0: cosmos.evm.vm.v1.QueryConfigRequest (*QueryConfigResponse)(nil), // 1: cosmos.evm.vm.v1.QueryConfigResponse - (*QueryAccountRequest)(nil), // 2: cosmos.evm.vm.v1.QueryAccountRequest - (*QueryAccountResponse)(nil), // 3: cosmos.evm.vm.v1.QueryAccountResponse - (*QueryCosmosAccountRequest)(nil), // 4: cosmos.evm.vm.v1.QueryCosmosAccountRequest - (*QueryCosmosAccountResponse)(nil), // 5: cosmos.evm.vm.v1.QueryCosmosAccountResponse - (*QueryValidatorAccountRequest)(nil), // 6: cosmos.evm.vm.v1.QueryValidatorAccountRequest - (*QueryValidatorAccountResponse)(nil), // 7: cosmos.evm.vm.v1.QueryValidatorAccountResponse - (*QueryBalanceRequest)(nil), // 8: cosmos.evm.vm.v1.QueryBalanceRequest - (*QueryBalanceResponse)(nil), // 9: cosmos.evm.vm.v1.QueryBalanceResponse - (*QueryStorageRequest)(nil), // 10: cosmos.evm.vm.v1.QueryStorageRequest - (*QueryStorageResponse)(nil), // 11: cosmos.evm.vm.v1.QueryStorageResponse - (*QueryCodeRequest)(nil), // 12: cosmos.evm.vm.v1.QueryCodeRequest - (*QueryCodeResponse)(nil), // 13: cosmos.evm.vm.v1.QueryCodeResponse - (*QueryTxLogsRequest)(nil), // 14: cosmos.evm.vm.v1.QueryTxLogsRequest - (*QueryTxLogsResponse)(nil), // 15: cosmos.evm.vm.v1.QueryTxLogsResponse - (*QueryParamsRequest)(nil), // 16: cosmos.evm.vm.v1.QueryParamsRequest - (*QueryParamsResponse)(nil), // 17: cosmos.evm.vm.v1.QueryParamsResponse - (*EthCallRequest)(nil), // 18: cosmos.evm.vm.v1.EthCallRequest - (*EstimateGasResponse)(nil), // 19: cosmos.evm.vm.v1.EstimateGasResponse - (*QueryTraceTxRequest)(nil), // 20: cosmos.evm.vm.v1.QueryTraceTxRequest - (*QueryTraceTxResponse)(nil), // 21: cosmos.evm.vm.v1.QueryTraceTxResponse - (*QueryTraceBlockRequest)(nil), // 22: cosmos.evm.vm.v1.QueryTraceBlockRequest - (*QueryTraceBlockResponse)(nil), // 23: cosmos.evm.vm.v1.QueryTraceBlockResponse - (*QueryTraceCallRequest)(nil), // 24: cosmos.evm.vm.v1.QueryTraceCallRequest - (*QueryTraceCallResponse)(nil), // 25: cosmos.evm.vm.v1.QueryTraceCallResponse - (*QueryBaseFeeRequest)(nil), // 26: cosmos.evm.vm.v1.QueryBaseFeeRequest - (*QueryBaseFeeResponse)(nil), // 27: cosmos.evm.vm.v1.QueryBaseFeeResponse - (*QueryGlobalMinGasPriceRequest)(nil), // 28: cosmos.evm.vm.v1.QueryGlobalMinGasPriceRequest - (*QueryGlobalMinGasPriceResponse)(nil), // 29: cosmos.evm.vm.v1.QueryGlobalMinGasPriceResponse - (*ChainConfig)(nil), // 30: cosmos.evm.vm.v1.ChainConfig - (*v1beta1.PageRequest)(nil), // 31: cosmos.base.query.v1beta1.PageRequest - (*Log)(nil), // 32: cosmos.evm.vm.v1.Log - (*v1beta1.PageResponse)(nil), // 33: cosmos.base.query.v1beta1.PageResponse - (*Params)(nil), // 34: cosmos.evm.vm.v1.Params - (*MsgEthereumTx)(nil), // 35: cosmos.evm.vm.v1.MsgEthereumTx - (*TraceConfig)(nil), // 36: cosmos.evm.vm.v1.TraceConfig - (*timestamppb.Timestamp)(nil), // 37: google.protobuf.Timestamp - (*MsgEthereumTxResponse)(nil), // 38: cosmos.evm.vm.v1.MsgEthereumTxResponse + (*QueryPrecompileRequest)(nil), // 2: cosmos.evm.vm.v1.QueryPrecompileRequest + (*QueryPrecompileResponse)(nil), // 3: cosmos.evm.vm.v1.QueryPrecompileResponse + (*QueryAccountRequest)(nil), // 4: cosmos.evm.vm.v1.QueryAccountRequest + (*QueryAccountResponse)(nil), // 5: cosmos.evm.vm.v1.QueryAccountResponse + (*QueryCosmosAccountRequest)(nil), // 6: cosmos.evm.vm.v1.QueryCosmosAccountRequest + (*QueryCosmosAccountResponse)(nil), // 7: cosmos.evm.vm.v1.QueryCosmosAccountResponse + (*QueryValidatorAccountRequest)(nil), // 8: cosmos.evm.vm.v1.QueryValidatorAccountRequest + (*QueryValidatorAccountResponse)(nil), // 9: cosmos.evm.vm.v1.QueryValidatorAccountResponse + (*QueryBalanceRequest)(nil), // 10: cosmos.evm.vm.v1.QueryBalanceRequest + (*QueryBalanceResponse)(nil), // 11: cosmos.evm.vm.v1.QueryBalanceResponse + (*QueryStorageRequest)(nil), // 12: cosmos.evm.vm.v1.QueryStorageRequest + (*QueryStorageResponse)(nil), // 13: cosmos.evm.vm.v1.QueryStorageResponse + (*QueryCodeRequest)(nil), // 14: cosmos.evm.vm.v1.QueryCodeRequest + (*QueryCodeResponse)(nil), // 15: cosmos.evm.vm.v1.QueryCodeResponse + (*QueryTxLogsRequest)(nil), // 16: cosmos.evm.vm.v1.QueryTxLogsRequest + (*QueryTxLogsResponse)(nil), // 17: cosmos.evm.vm.v1.QueryTxLogsResponse + (*QueryParamsRequest)(nil), // 18: cosmos.evm.vm.v1.QueryParamsRequest + (*QueryParamsResponse)(nil), // 19: cosmos.evm.vm.v1.QueryParamsResponse + (*StateEntry)(nil), // 20: cosmos.evm.vm.v1.StateEntry + (*StoreStateDiff)(nil), // 21: cosmos.evm.vm.v1.StoreStateDiff + (*EthCallRequest)(nil), // 22: cosmos.evm.vm.v1.EthCallRequest + (*EstimateGasResponse)(nil), // 23: cosmos.evm.vm.v1.EstimateGasResponse + (*QueryTraceTxRequest)(nil), // 24: cosmos.evm.vm.v1.QueryTraceTxRequest + (*QueryTraceTxResponse)(nil), // 25: cosmos.evm.vm.v1.QueryTraceTxResponse + (*QueryTraceBlockRequest)(nil), // 26: cosmos.evm.vm.v1.QueryTraceBlockRequest + (*QueryTraceBlockResponse)(nil), // 27: cosmos.evm.vm.v1.QueryTraceBlockResponse + (*QueryTraceCallRequest)(nil), // 28: cosmos.evm.vm.v1.QueryTraceCallRequest + (*QueryTraceCallResponse)(nil), // 29: cosmos.evm.vm.v1.QueryTraceCallResponse + (*QueryBaseFeeRequest)(nil), // 30: cosmos.evm.vm.v1.QueryBaseFeeRequest + (*QueryBaseFeeResponse)(nil), // 31: cosmos.evm.vm.v1.QueryBaseFeeResponse + (*QueryGlobalMinGasPriceRequest)(nil), // 32: cosmos.evm.vm.v1.QueryGlobalMinGasPriceRequest + (*QueryGlobalMinGasPriceResponse)(nil), // 33: cosmos.evm.vm.v1.QueryGlobalMinGasPriceResponse + (*ChainConfig)(nil), // 34: cosmos.evm.vm.v1.ChainConfig + (*v1beta1.PageRequest)(nil), // 35: cosmos.base.query.v1beta1.PageRequest + (*Log)(nil), // 36: cosmos.evm.vm.v1.Log + (*v1beta1.PageResponse)(nil), // 37: cosmos.base.query.v1beta1.PageResponse + (*Params)(nil), // 38: cosmos.evm.vm.v1.Params + (*MsgEthereumTx)(nil), // 39: cosmos.evm.vm.v1.MsgEthereumTx + (*TraceConfig)(nil), // 40: cosmos.evm.vm.v1.TraceConfig + (*timestamppb.Timestamp)(nil), // 41: google.protobuf.Timestamp + (*MsgEthereumTxResponse)(nil), // 42: cosmos.evm.vm.v1.MsgEthereumTxResponse } var file_cosmos_evm_vm_v1_query_proto_depIdxs = []int32{ - 30, // 0: cosmos.evm.vm.v1.QueryConfigResponse.config:type_name -> cosmos.evm.vm.v1.ChainConfig - 31, // 1: cosmos.evm.vm.v1.QueryTxLogsRequest.pagination:type_name -> cosmos.base.query.v1beta1.PageRequest - 32, // 2: cosmos.evm.vm.v1.QueryTxLogsResponse.logs:type_name -> cosmos.evm.vm.v1.Log - 33, // 3: cosmos.evm.vm.v1.QueryTxLogsResponse.pagination:type_name -> cosmos.base.query.v1beta1.PageResponse - 34, // 4: cosmos.evm.vm.v1.QueryParamsResponse.params:type_name -> cosmos.evm.vm.v1.Params - 35, // 5: cosmos.evm.vm.v1.QueryTraceTxRequest.msg:type_name -> cosmos.evm.vm.v1.MsgEthereumTx - 36, // 6: cosmos.evm.vm.v1.QueryTraceTxRequest.trace_config:type_name -> cosmos.evm.vm.v1.TraceConfig - 35, // 7: cosmos.evm.vm.v1.QueryTraceTxRequest.predecessors:type_name -> cosmos.evm.vm.v1.MsgEthereumTx - 37, // 8: cosmos.evm.vm.v1.QueryTraceTxRequest.block_time:type_name -> google.protobuf.Timestamp - 35, // 9: cosmos.evm.vm.v1.QueryTraceBlockRequest.txs:type_name -> cosmos.evm.vm.v1.MsgEthereumTx - 36, // 10: cosmos.evm.vm.v1.QueryTraceBlockRequest.trace_config:type_name -> cosmos.evm.vm.v1.TraceConfig - 37, // 11: cosmos.evm.vm.v1.QueryTraceBlockRequest.block_time:type_name -> google.protobuf.Timestamp - 36, // 12: cosmos.evm.vm.v1.QueryTraceCallRequest.trace_config:type_name -> cosmos.evm.vm.v1.TraceConfig - 37, // 13: cosmos.evm.vm.v1.QueryTraceCallRequest.block_time:type_name -> google.protobuf.Timestamp - 2, // 14: cosmos.evm.vm.v1.Query.Account:input_type -> cosmos.evm.vm.v1.QueryAccountRequest - 4, // 15: cosmos.evm.vm.v1.Query.CosmosAccount:input_type -> cosmos.evm.vm.v1.QueryCosmosAccountRequest - 6, // 16: cosmos.evm.vm.v1.Query.ValidatorAccount:input_type -> cosmos.evm.vm.v1.QueryValidatorAccountRequest - 8, // 17: cosmos.evm.vm.v1.Query.Balance:input_type -> cosmos.evm.vm.v1.QueryBalanceRequest - 10, // 18: cosmos.evm.vm.v1.Query.Storage:input_type -> cosmos.evm.vm.v1.QueryStorageRequest - 12, // 19: cosmos.evm.vm.v1.Query.Code:input_type -> cosmos.evm.vm.v1.QueryCodeRequest - 16, // 20: cosmos.evm.vm.v1.Query.Params:input_type -> cosmos.evm.vm.v1.QueryParamsRequest - 18, // 21: cosmos.evm.vm.v1.Query.EthCall:input_type -> cosmos.evm.vm.v1.EthCallRequest - 18, // 22: cosmos.evm.vm.v1.Query.EstimateGas:input_type -> cosmos.evm.vm.v1.EthCallRequest - 20, // 23: cosmos.evm.vm.v1.Query.TraceTx:input_type -> cosmos.evm.vm.v1.QueryTraceTxRequest - 22, // 24: cosmos.evm.vm.v1.Query.TraceBlock:input_type -> cosmos.evm.vm.v1.QueryTraceBlockRequest - 24, // 25: cosmos.evm.vm.v1.Query.TraceCall:input_type -> cosmos.evm.vm.v1.QueryTraceCallRequest - 26, // 26: cosmos.evm.vm.v1.Query.BaseFee:input_type -> cosmos.evm.vm.v1.QueryBaseFeeRequest - 0, // 27: cosmos.evm.vm.v1.Query.Config:input_type -> cosmos.evm.vm.v1.QueryConfigRequest - 28, // 28: cosmos.evm.vm.v1.Query.GlobalMinGasPrice:input_type -> cosmos.evm.vm.v1.QueryGlobalMinGasPriceRequest - 3, // 29: cosmos.evm.vm.v1.Query.Account:output_type -> cosmos.evm.vm.v1.QueryAccountResponse - 5, // 30: cosmos.evm.vm.v1.Query.CosmosAccount:output_type -> cosmos.evm.vm.v1.QueryCosmosAccountResponse - 7, // 31: cosmos.evm.vm.v1.Query.ValidatorAccount:output_type -> cosmos.evm.vm.v1.QueryValidatorAccountResponse - 9, // 32: cosmos.evm.vm.v1.Query.Balance:output_type -> cosmos.evm.vm.v1.QueryBalanceResponse - 11, // 33: cosmos.evm.vm.v1.Query.Storage:output_type -> cosmos.evm.vm.v1.QueryStorageResponse - 13, // 34: cosmos.evm.vm.v1.Query.Code:output_type -> cosmos.evm.vm.v1.QueryCodeResponse - 17, // 35: cosmos.evm.vm.v1.Query.Params:output_type -> cosmos.evm.vm.v1.QueryParamsResponse - 38, // 36: cosmos.evm.vm.v1.Query.EthCall:output_type -> cosmos.evm.vm.v1.MsgEthereumTxResponse - 19, // 37: cosmos.evm.vm.v1.Query.EstimateGas:output_type -> cosmos.evm.vm.v1.EstimateGasResponse - 21, // 38: cosmos.evm.vm.v1.Query.TraceTx:output_type -> cosmos.evm.vm.v1.QueryTraceTxResponse - 23, // 39: cosmos.evm.vm.v1.Query.TraceBlock:output_type -> cosmos.evm.vm.v1.QueryTraceBlockResponse - 25, // 40: cosmos.evm.vm.v1.Query.TraceCall:output_type -> cosmos.evm.vm.v1.QueryTraceCallResponse - 27, // 41: cosmos.evm.vm.v1.Query.BaseFee:output_type -> cosmos.evm.vm.v1.QueryBaseFeeResponse - 1, // 42: cosmos.evm.vm.v1.Query.Config:output_type -> cosmos.evm.vm.v1.QueryConfigResponse - 29, // 43: cosmos.evm.vm.v1.Query.GlobalMinGasPrice:output_type -> cosmos.evm.vm.v1.QueryGlobalMinGasPriceResponse - 29, // [29:44] is the sub-list for method output_type - 14, // [14:29] is the sub-list for method input_type - 14, // [14:14] is the sub-list for extension type_name - 14, // [14:14] is the sub-list for extension extendee - 0, // [0:14] is the sub-list for field type_name + 34, // 0: cosmos.evm.vm.v1.QueryConfigResponse.config:type_name -> cosmos.evm.vm.v1.ChainConfig + 35, // 1: cosmos.evm.vm.v1.QueryTxLogsRequest.pagination:type_name -> cosmos.base.query.v1beta1.PageRequest + 36, // 2: cosmos.evm.vm.v1.QueryTxLogsResponse.logs:type_name -> cosmos.evm.vm.v1.Log + 37, // 3: cosmos.evm.vm.v1.QueryTxLogsResponse.pagination:type_name -> cosmos.base.query.v1beta1.PageResponse + 38, // 4: cosmos.evm.vm.v1.QueryParamsResponse.params:type_name -> cosmos.evm.vm.v1.Params + 20, // 5: cosmos.evm.vm.v1.StoreStateDiff.entries:type_name -> cosmos.evm.vm.v1.StateEntry + 21, // 6: cosmos.evm.vm.v1.EthCallRequest.state_overrides:type_name -> cosmos.evm.vm.v1.StoreStateDiff + 39, // 7: cosmos.evm.vm.v1.QueryTraceTxRequest.msg:type_name -> cosmos.evm.vm.v1.MsgEthereumTx + 40, // 8: cosmos.evm.vm.v1.QueryTraceTxRequest.trace_config:type_name -> cosmos.evm.vm.v1.TraceConfig + 39, // 9: cosmos.evm.vm.v1.QueryTraceTxRequest.predecessors:type_name -> cosmos.evm.vm.v1.MsgEthereumTx + 41, // 10: cosmos.evm.vm.v1.QueryTraceTxRequest.block_time:type_name -> google.protobuf.Timestamp + 39, // 11: cosmos.evm.vm.v1.QueryTraceBlockRequest.txs:type_name -> cosmos.evm.vm.v1.MsgEthereumTx + 40, // 12: cosmos.evm.vm.v1.QueryTraceBlockRequest.trace_config:type_name -> cosmos.evm.vm.v1.TraceConfig + 41, // 13: cosmos.evm.vm.v1.QueryTraceBlockRequest.block_time:type_name -> google.protobuf.Timestamp + 40, // 14: cosmos.evm.vm.v1.QueryTraceCallRequest.trace_config:type_name -> cosmos.evm.vm.v1.TraceConfig + 41, // 15: cosmos.evm.vm.v1.QueryTraceCallRequest.block_time:type_name -> google.protobuf.Timestamp + 4, // 16: cosmos.evm.vm.v1.Query.Account:input_type -> cosmos.evm.vm.v1.QueryAccountRequest + 6, // 17: cosmos.evm.vm.v1.Query.CosmosAccount:input_type -> cosmos.evm.vm.v1.QueryCosmosAccountRequest + 8, // 18: cosmos.evm.vm.v1.Query.ValidatorAccount:input_type -> cosmos.evm.vm.v1.QueryValidatorAccountRequest + 10, // 19: cosmos.evm.vm.v1.Query.Balance:input_type -> cosmos.evm.vm.v1.QueryBalanceRequest + 12, // 20: cosmos.evm.vm.v1.Query.Storage:input_type -> cosmos.evm.vm.v1.QueryStorageRequest + 14, // 21: cosmos.evm.vm.v1.Query.Code:input_type -> cosmos.evm.vm.v1.QueryCodeRequest + 18, // 22: cosmos.evm.vm.v1.Query.Params:input_type -> cosmos.evm.vm.v1.QueryParamsRequest + 22, // 23: cosmos.evm.vm.v1.Query.EthCall:input_type -> cosmos.evm.vm.v1.EthCallRequest + 22, // 24: cosmos.evm.vm.v1.Query.EstimateGas:input_type -> cosmos.evm.vm.v1.EthCallRequest + 24, // 25: cosmos.evm.vm.v1.Query.TraceTx:input_type -> cosmos.evm.vm.v1.QueryTraceTxRequest + 26, // 26: cosmos.evm.vm.v1.Query.TraceBlock:input_type -> cosmos.evm.vm.v1.QueryTraceBlockRequest + 28, // 27: cosmos.evm.vm.v1.Query.TraceCall:input_type -> cosmos.evm.vm.v1.QueryTraceCallRequest + 30, // 28: cosmos.evm.vm.v1.Query.BaseFee:input_type -> cosmos.evm.vm.v1.QueryBaseFeeRequest + 0, // 29: cosmos.evm.vm.v1.Query.Config:input_type -> cosmos.evm.vm.v1.QueryConfigRequest + 2, // 30: cosmos.evm.vm.v1.Query.Precompile:input_type -> cosmos.evm.vm.v1.QueryPrecompileRequest + 32, // 31: cosmos.evm.vm.v1.Query.GlobalMinGasPrice:input_type -> cosmos.evm.vm.v1.QueryGlobalMinGasPriceRequest + 5, // 32: cosmos.evm.vm.v1.Query.Account:output_type -> cosmos.evm.vm.v1.QueryAccountResponse + 7, // 33: cosmos.evm.vm.v1.Query.CosmosAccount:output_type -> cosmos.evm.vm.v1.QueryCosmosAccountResponse + 9, // 34: cosmos.evm.vm.v1.Query.ValidatorAccount:output_type -> cosmos.evm.vm.v1.QueryValidatorAccountResponse + 11, // 35: cosmos.evm.vm.v1.Query.Balance:output_type -> cosmos.evm.vm.v1.QueryBalanceResponse + 13, // 36: cosmos.evm.vm.v1.Query.Storage:output_type -> cosmos.evm.vm.v1.QueryStorageResponse + 15, // 37: cosmos.evm.vm.v1.Query.Code:output_type -> cosmos.evm.vm.v1.QueryCodeResponse + 19, // 38: cosmos.evm.vm.v1.Query.Params:output_type -> cosmos.evm.vm.v1.QueryParamsResponse + 42, // 39: cosmos.evm.vm.v1.Query.EthCall:output_type -> cosmos.evm.vm.v1.MsgEthereumTxResponse + 23, // 40: cosmos.evm.vm.v1.Query.EstimateGas:output_type -> cosmos.evm.vm.v1.EstimateGasResponse + 25, // 41: cosmos.evm.vm.v1.Query.TraceTx:output_type -> cosmos.evm.vm.v1.QueryTraceTxResponse + 27, // 42: cosmos.evm.vm.v1.Query.TraceBlock:output_type -> cosmos.evm.vm.v1.QueryTraceBlockResponse + 29, // 43: cosmos.evm.vm.v1.Query.TraceCall:output_type -> cosmos.evm.vm.v1.QueryTraceCallResponse + 31, // 44: cosmos.evm.vm.v1.Query.BaseFee:output_type -> cosmos.evm.vm.v1.QueryBaseFeeResponse + 1, // 45: cosmos.evm.vm.v1.Query.Config:output_type -> cosmos.evm.vm.v1.QueryConfigResponse + 3, // 46: cosmos.evm.vm.v1.Query.Precompile:output_type -> cosmos.evm.vm.v1.QueryPrecompileResponse + 33, // 47: cosmos.evm.vm.v1.Query.GlobalMinGasPrice:output_type -> cosmos.evm.vm.v1.QueryGlobalMinGasPriceResponse + 32, // [32:48] is the sub-list for method output_type + 16, // [16:32] is the sub-list for method input_type + 16, // [16:16] is the sub-list for extension type_name + 16, // [16:16] is the sub-list for extension extendee + 0, // [0:16] is the sub-list for field type_name } func init() { file_cosmos_evm_vm_v1_query_proto_init() } @@ -16808,7 +19161,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryAccountRequest); i { + switch v := v.(*QueryPrecompileRequest); i { case 0: return &v.state case 1: @@ -16820,7 +19173,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryAccountResponse); i { + switch v := v.(*QueryPrecompileResponse); i { case 0: return &v.state case 1: @@ -16832,7 +19185,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryCosmosAccountRequest); i { + switch v := v.(*QueryAccountRequest); i { case 0: return &v.state case 1: @@ -16844,7 +19197,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryCosmosAccountResponse); i { + switch v := v.(*QueryAccountResponse); i { case 0: return &v.state case 1: @@ -16856,7 +19209,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryValidatorAccountRequest); i { + switch v := v.(*QueryCosmosAccountRequest); i { case 0: return &v.state case 1: @@ -16868,7 +19221,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryValidatorAccountResponse); i { + switch v := v.(*QueryCosmosAccountResponse); i { case 0: return &v.state case 1: @@ -16880,7 +19233,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryBalanceRequest); i { + switch v := v.(*QueryValidatorAccountRequest); i { case 0: return &v.state case 1: @@ -16892,7 +19245,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryBalanceResponse); i { + switch v := v.(*QueryValidatorAccountResponse); i { case 0: return &v.state case 1: @@ -16904,7 +19257,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryStorageRequest); i { + switch v := v.(*QueryBalanceRequest); i { case 0: return &v.state case 1: @@ -16916,7 +19269,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryStorageResponse); i { + switch v := v.(*QueryBalanceResponse); i { case 0: return &v.state case 1: @@ -16928,7 +19281,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryCodeRequest); i { + switch v := v.(*QueryStorageRequest); i { case 0: return &v.state case 1: @@ -16940,7 +19293,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryCodeResponse); i { + switch v := v.(*QueryStorageResponse); i { case 0: return &v.state case 1: @@ -16952,7 +19305,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryTxLogsRequest); i { + switch v := v.(*QueryCodeRequest); i { case 0: return &v.state case 1: @@ -16964,7 +19317,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryTxLogsResponse); i { + switch v := v.(*QueryCodeResponse); i { case 0: return &v.state case 1: @@ -16976,7 +19329,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryParamsRequest); i { + switch v := v.(*QueryTxLogsRequest); i { case 0: return &v.state case 1: @@ -16988,7 +19341,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryParamsResponse); i { + switch v := v.(*QueryTxLogsResponse); i { case 0: return &v.state case 1: @@ -17000,7 +19353,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*EthCallRequest); i { + switch v := v.(*QueryParamsRequest); i { case 0: return &v.state case 1: @@ -17012,7 +19365,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*EstimateGasResponse); i { + switch v := v.(*QueryParamsResponse); i { case 0: return &v.state case 1: @@ -17024,7 +19377,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryTraceTxRequest); i { + switch v := v.(*StateEntry); i { case 0: return &v.state case 1: @@ -17036,7 +19389,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryTraceTxResponse); i { + switch v := v.(*StoreStateDiff); i { case 0: return &v.state case 1: @@ -17048,7 +19401,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryTraceBlockRequest); i { + switch v := v.(*EthCallRequest); i { case 0: return &v.state case 1: @@ -17060,7 +19413,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryTraceBlockResponse); i { + switch v := v.(*EstimateGasResponse); i { case 0: return &v.state case 1: @@ -17072,7 +19425,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryTraceCallRequest); i { + switch v := v.(*QueryTraceTxRequest); i { case 0: return &v.state case 1: @@ -17084,7 +19437,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryTraceCallResponse); i { + switch v := v.(*QueryTraceTxResponse); i { case 0: return &v.state case 1: @@ -17096,7 +19449,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryBaseFeeRequest); i { + switch v := v.(*QueryTraceBlockRequest); i { case 0: return &v.state case 1: @@ -17108,7 +19461,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryBaseFeeResponse); i { + switch v := v.(*QueryTraceBlockResponse); i { case 0: return &v.state case 1: @@ -17120,7 +19473,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryGlobalMinGasPriceRequest); i { + switch v := v.(*QueryTraceCallRequest); i { case 0: return &v.state case 1: @@ -17132,6 +19485,54 @@ func file_cosmos_evm_vm_v1_query_proto_init() { } } file_cosmos_evm_vm_v1_query_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*QueryTraceCallResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_cosmos_evm_vm_v1_query_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*QueryBaseFeeRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_cosmos_evm_vm_v1_query_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*QueryBaseFeeResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_cosmos_evm_vm_v1_query_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*QueryGlobalMinGasPriceRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_cosmos_evm_vm_v1_query_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*QueryGlobalMinGasPriceResponse); i { case 0: return &v.state @@ -17150,7 +19551,7 @@ func file_cosmos_evm_vm_v1_query_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_cosmos_evm_vm_v1_query_proto_rawDesc, NumEnums: 0, - NumMessages: 30, + NumMessages: 34, NumExtensions: 0, NumServices: 1, }, diff --git a/api/cosmos/evm/vm/v1/query_grpc.pb.go b/api/cosmos/evm/vm/v1/query_grpc.pb.go index fd130cf32..f1f6ba16c 100644 --- a/api/cosmos/evm/vm/v1/query_grpc.pb.go +++ b/api/cosmos/evm/vm/v1/query_grpc.pb.go @@ -33,6 +33,7 @@ const ( Query_TraceCall_FullMethodName = "/cosmos.evm.vm.v1.Query/TraceCall" Query_BaseFee_FullMethodName = "/cosmos.evm.vm.v1.Query/BaseFee" Query_Config_FullMethodName = "/cosmos.evm.vm.v1.Query/Config" + Query_Precompile_FullMethodName = "/cosmos.evm.vm.v1.Query/Precompile" Query_GlobalMinGasPrice_FullMethodName = "/cosmos.evm.vm.v1.Query/GlobalMinGasPrice" ) @@ -73,6 +74,8 @@ type QueryClient interface { BaseFee(ctx context.Context, in *QueryBaseFeeRequest, opts ...grpc.CallOption) (*QueryBaseFeeResponse, error) // Config queries the EVM configuration Config(ctx context.Context, in *QueryConfigRequest, opts ...grpc.CallOption) (*QueryConfigResponse, error) + // Precompile queries if an address is a precompile (static or dynamic) + Precompile(ctx context.Context, in *QueryPrecompileRequest, opts ...grpc.CallOption) (*QueryPrecompileResponse, error) // GlobalMinGasPrice queries the MinGasPrice // it's similar to feemarket module's method, // but makes the conversion to 18 decimals @@ -214,6 +217,15 @@ func (c *queryClient) Config(ctx context.Context, in *QueryConfigRequest, opts . return out, nil } +func (c *queryClient) Precompile(ctx context.Context, in *QueryPrecompileRequest, opts ...grpc.CallOption) (*QueryPrecompileResponse, error) { + out := new(QueryPrecompileResponse) + err := c.cc.Invoke(ctx, Query_Precompile_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *queryClient) GlobalMinGasPrice(ctx context.Context, in *QueryGlobalMinGasPriceRequest, opts ...grpc.CallOption) (*QueryGlobalMinGasPriceResponse, error) { out := new(QueryGlobalMinGasPriceResponse) err := c.cc.Invoke(ctx, Query_GlobalMinGasPrice_FullMethodName, in, out, opts...) @@ -260,6 +272,8 @@ type QueryServer interface { BaseFee(context.Context, *QueryBaseFeeRequest) (*QueryBaseFeeResponse, error) // Config queries the EVM configuration Config(context.Context, *QueryConfigRequest) (*QueryConfigResponse, error) + // Precompile queries if an address is a precompile (static or dynamic) + Precompile(context.Context, *QueryPrecompileRequest) (*QueryPrecompileResponse, error) // GlobalMinGasPrice queries the MinGasPrice // it's similar to feemarket module's method, // but makes the conversion to 18 decimals @@ -314,6 +328,9 @@ func (UnimplementedQueryServer) BaseFee(context.Context, *QueryBaseFeeRequest) ( func (UnimplementedQueryServer) Config(context.Context, *QueryConfigRequest) (*QueryConfigResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method Config not implemented") } +func (UnimplementedQueryServer) Precompile(context.Context, *QueryPrecompileRequest) (*QueryPrecompileResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Precompile not implemented") +} func (UnimplementedQueryServer) GlobalMinGasPrice(context.Context, *QueryGlobalMinGasPriceRequest) (*QueryGlobalMinGasPriceResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method GlobalMinGasPrice not implemented") } @@ -582,6 +599,24 @@ func _Query_Config_Handler(srv interface{}, ctx context.Context, dec func(interf return interceptor(ctx, in, info, handler) } +func _Query_Precompile_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryPrecompileRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(QueryServer).Precompile(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: Query_Precompile_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).Precompile(ctx, req.(*QueryPrecompileRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _Query_GlobalMinGasPrice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(QueryGlobalMinGasPriceRequest) if err := dec(in); err != nil { @@ -663,6 +698,10 @@ var Query_ServiceDesc = grpc.ServiceDesc{ MethodName: "Config", Handler: _Query_Config_Handler, }, + { + MethodName: "Precompile", + Handler: _Query_Precompile_Handler, + }, { MethodName: "GlobalMinGasPrice", Handler: _Query_GlobalMinGasPrice_Handler, diff --git a/proto/cosmos/evm/vm/v1/query.proto b/proto/cosmos/evm/vm/v1/query.proto index 1bc327611..a5841ffdf 100644 --- a/proto/cosmos/evm/vm/v1/query.proto +++ b/proto/cosmos/evm/vm/v1/query.proto @@ -92,6 +92,11 @@ service Query { option (google.api.http).get = "/cosmos/evm/vm/v1/config"; } + // Precompile queries if an address is a precompile (static or dynamic) + rpc Precompile(QueryPrecompileRequest) returns (QueryPrecompileResponse) { + option (google.api.http).get = "/cosmos/evm/vm/v1/precompile/{address}"; + } + // GlobalMinGasPrice queries the MinGasPrice // it's similar to feemarket module's method, // but makes the conversion to 18 decimals @@ -111,6 +116,20 @@ message QueryConfigResponse { ChainConfig config = 1; } +// QueryPrecompileRequest defines the request type for querying if an address is a precompile +message QueryPrecompileRequest { + // address is the ethereum hex address to check + string address = 1; +} + +// QueryPrecompileResponse returns information about whether the address is a precompile +message QueryPrecompileResponse { + // is_precompile indicates if the address is a precompile contract + bool is_precompile = 1; + // is_static indicates if it's a static precompile (true) or dynamic precompile (false) + bool is_static = 2; +} + // QueryAccountRequest is the request type for the Query/Account RPC method. message QueryAccountRequest { option (gogoproto.equal) = false; @@ -251,6 +270,19 @@ message QueryParamsResponse { [ (gogoproto.nullable) = false, (amino.dont_omitempty) = true ]; } +// StateEntry defines a single state change operation +message StateEntry { + bytes key = 1; + bytes value = 2; + bool delete = 3; +} + +// StoreStateDiff defines a set of state changes for a single store +message StoreStateDiff { + string name = 1; + repeated StateEntry entries = 2 [ (gogoproto.nullable) = false ]; +} + // EthCallRequest defines EthCall request message EthCallRequest { // args uses the same json format as the json rpc api. @@ -265,6 +297,8 @@ message EthCallRequest { int64 chain_id = 4; // state overrides encoded as json bytes overrides = 5; + // state_overrides represents the state overrides before executing the call + repeated StoreStateDiff state_overrides = 6 [ (gogoproto.nullable) = false ]; } // EstimateGasResponse defines EstimateGas response diff --git a/rpc/backend/mocks/evm_query_client.go b/rpc/backend/mocks/evm_query_client.go index f62d963e7..a993cb39a 100644 --- a/rpc/backend/mocks/evm_query_client.go +++ b/rpc/backend/mocks/evm_query_client.go @@ -1,4 +1,4 @@ -// Code generated by mockery v2.43.2. DO NOT EDIT. +// Code generated by mockery v2.53.5. DO NOT EDIT. package mocks @@ -12,7 +12,7 @@ import ( types "github.com/cosmos/evm/x/vm/types" ) -// EVMQueryClient is an autogenerated mock type for the EVMQueryClient type +// EVMQueryClient is an autogenerated mock type for the QueryClient type type EVMQueryClient struct { mock.Mock } @@ -165,6 +165,43 @@ func (_m *EVMQueryClient) Code(ctx context.Context, in *types.QueryCodeRequest, return r0, r1 } +// Config provides a mock function with given fields: ctx, in, opts +func (_m *EVMQueryClient) Config(ctx context.Context, in *types.QueryConfigRequest, opts ...grpc.CallOption) (*types.QueryConfigResponse, error) { + _va := make([]interface{}, len(opts)) + for _i := range opts { + _va[_i] = opts[_i] + } + var _ca []interface{} + _ca = append(_ca, ctx, in) + _ca = append(_ca, _va...) + ret := _m.Called(_ca...) + + if len(ret) == 0 { + panic("no return value specified for Config") + } + + var r0 *types.QueryConfigResponse + var r1 error + if rf, ok := ret.Get(0).(func(context.Context, *types.QueryConfigRequest, ...grpc.CallOption) (*types.QueryConfigResponse, error)); ok { + return rf(ctx, in, opts...) + } + if rf, ok := ret.Get(0).(func(context.Context, *types.QueryConfigRequest, ...grpc.CallOption) *types.QueryConfigResponse); ok { + r0 = rf(ctx, in, opts...) + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).(*types.QueryConfigResponse) + } + } + + if rf, ok := ret.Get(1).(func(context.Context, *types.QueryConfigRequest, ...grpc.CallOption) error); ok { + r1 = rf(ctx, in, opts...) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + // CosmosAccount provides a mock function with given fields: ctx, in, opts func (_m *EVMQueryClient) CosmosAccount(ctx context.Context, in *types.QueryCosmosAccountRequest, opts ...grpc.CallOption) (*types.QueryCosmosAccountResponse, error) { _va := make([]interface{}, len(opts)) @@ -239,8 +276,8 @@ func (_m *EVMQueryClient) EstimateGas(ctx context.Context, in *types.EthCallRequ return r0, r1 } -// GlobalMinGasPrice provides a mock function with given fields: ctx, in, opts -func (_m *EVMQueryClient) GlobalMinGasPrice(ctx context.Context, in *types.QueryGlobalMinGasPriceRequest, opts ...grpc.CallOption) (*types.QueryGlobalMinGasPriceResponse, error) { +// EthCall provides a mock function with given fields: ctx, in, opts +func (_m *EVMQueryClient) EthCall(ctx context.Context, in *types.EthCallRequest, opts ...grpc.CallOption) (*types.MsgEthereumTxResponse, error) { _va := make([]interface{}, len(opts)) for _i := range opts { _va[_i] = opts[_i] @@ -250,17 +287,24 @@ func (_m *EVMQueryClient) GlobalMinGasPrice(ctx context.Context, in *types.Query _ca = append(_ca, _va...) ret := _m.Called(_ca...) - var r0 *types.QueryGlobalMinGasPriceResponse - if rf, ok := ret.Get(0).(func(context.Context, *types.QueryGlobalMinGasPriceRequest, ...grpc.CallOption) *types.QueryGlobalMinGasPriceResponse); ok { + if len(ret) == 0 { + panic("no return value specified for EthCall") + } + + var r0 *types.MsgEthereumTxResponse + var r1 error + if rf, ok := ret.Get(0).(func(context.Context, *types.EthCallRequest, ...grpc.CallOption) (*types.MsgEthereumTxResponse, error)); ok { + return rf(ctx, in, opts...) + } + if rf, ok := ret.Get(0).(func(context.Context, *types.EthCallRequest, ...grpc.CallOption) *types.MsgEthereumTxResponse); ok { r0 = rf(ctx, in, opts...) } else { if ret.Get(0) != nil { - r0 = ret.Get(0).(*types.QueryGlobalMinGasPriceResponse) + r0 = ret.Get(0).(*types.MsgEthereumTxResponse) } } - var r1 error - if rf, ok := ret.Get(1).(func(context.Context, *types.QueryGlobalMinGasPriceRequest, ...grpc.CallOption) error); ok { + if rf, ok := ret.Get(1).(func(context.Context, *types.EthCallRequest, ...grpc.CallOption) error); ok { r1 = rf(ctx, in, opts...) } else { r1 = ret.Error(1) @@ -269,8 +313,8 @@ func (_m *EVMQueryClient) GlobalMinGasPrice(ctx context.Context, in *types.Query return r0, r1 } -// Config provides a mock function with given fields: ctx, in, opts -func (_m *EVMQueryClient) Config(ctx context.Context, in *types.QueryConfigRequest, opts ...grpc.CallOption) (*types.QueryConfigResponse, error) { +// GlobalMinGasPrice provides a mock function with given fields: ctx, in, opts +func (_m *EVMQueryClient) GlobalMinGasPrice(ctx context.Context, in *types.QueryGlobalMinGasPriceRequest, opts ...grpc.CallOption) (*types.QueryGlobalMinGasPriceResponse, error) { _va := make([]interface{}, len(opts)) for _i := range opts { _va[_i] = opts[_i] @@ -281,23 +325,23 @@ func (_m *EVMQueryClient) Config(ctx context.Context, in *types.QueryConfigReque ret := _m.Called(_ca...) if len(ret) == 0 { - panic("no return value specified for Config") + panic("no return value specified for GlobalMinGasPrice") } - var r0 *types.QueryConfigResponse + var r0 *types.QueryGlobalMinGasPriceResponse var r1 error - if rf, ok := ret.Get(0).(func(context.Context, *types.QueryConfigRequest, ...grpc.CallOption) (*types.QueryConfigResponse, error)); ok { + if rf, ok := ret.Get(0).(func(context.Context, *types.QueryGlobalMinGasPriceRequest, ...grpc.CallOption) (*types.QueryGlobalMinGasPriceResponse, error)); ok { return rf(ctx, in, opts...) } - if rf, ok := ret.Get(0).(func(context.Context, *types.QueryConfigRequest, ...grpc.CallOption) *types.QueryConfigResponse); ok { + if rf, ok := ret.Get(0).(func(context.Context, *types.QueryGlobalMinGasPriceRequest, ...grpc.CallOption) *types.QueryGlobalMinGasPriceResponse); ok { r0 = rf(ctx, in, opts...) } else { if ret.Get(0) != nil { - r0 = ret.Get(0).(*types.QueryConfigResponse) + r0 = ret.Get(0).(*types.QueryGlobalMinGasPriceResponse) } } - if rf, ok := ret.Get(1).(func(context.Context, *types.QueryConfigRequest, ...grpc.CallOption) error); ok { + if rf, ok := ret.Get(1).(func(context.Context, *types.QueryGlobalMinGasPriceRequest, ...grpc.CallOption) error); ok { r1 = rf(ctx, in, opts...) } else { r1 = ret.Error(1) @@ -306,8 +350,8 @@ func (_m *EVMQueryClient) Config(ctx context.Context, in *types.QueryConfigReque return r0, r1 } -// EthCall provides a mock function with given fields: ctx, in, opts -func (_m *EVMQueryClient) EthCall(ctx context.Context, in *types.EthCallRequest, opts ...grpc.CallOption) (*types.MsgEthereumTxResponse, error) { +// Params provides a mock function with given fields: ctx, in, opts +func (_m *EVMQueryClient) Params(ctx context.Context, in *types.QueryParamsRequest, opts ...grpc.CallOption) (*types.QueryParamsResponse, error) { _va := make([]interface{}, len(opts)) for _i := range opts { _va[_i] = opts[_i] @@ -318,23 +362,23 @@ func (_m *EVMQueryClient) EthCall(ctx context.Context, in *types.EthCallRequest, ret := _m.Called(_ca...) if len(ret) == 0 { - panic("no return value specified for EthCall") + panic("no return value specified for Params") } - var r0 *types.MsgEthereumTxResponse + var r0 *types.QueryParamsResponse var r1 error - if rf, ok := ret.Get(0).(func(context.Context, *types.EthCallRequest, ...grpc.CallOption) (*types.MsgEthereumTxResponse, error)); ok { + if rf, ok := ret.Get(0).(func(context.Context, *types.QueryParamsRequest, ...grpc.CallOption) (*types.QueryParamsResponse, error)); ok { return rf(ctx, in, opts...) } - if rf, ok := ret.Get(0).(func(context.Context, *types.EthCallRequest, ...grpc.CallOption) *types.MsgEthereumTxResponse); ok { + if rf, ok := ret.Get(0).(func(context.Context, *types.QueryParamsRequest, ...grpc.CallOption) *types.QueryParamsResponse); ok { r0 = rf(ctx, in, opts...) } else { if ret.Get(0) != nil { - r0 = ret.Get(0).(*types.MsgEthereumTxResponse) + r0 = ret.Get(0).(*types.QueryParamsResponse) } } - if rf, ok := ret.Get(1).(func(context.Context, *types.EthCallRequest, ...grpc.CallOption) error); ok { + if rf, ok := ret.Get(1).(func(context.Context, *types.QueryParamsRequest, ...grpc.CallOption) error); ok { r1 = rf(ctx, in, opts...) } else { r1 = ret.Error(1) @@ -343,8 +387,8 @@ func (_m *EVMQueryClient) EthCall(ctx context.Context, in *types.EthCallRequest, return r0, r1 } -// Params provides a mock function with given fields: ctx, in, opts -func (_m *EVMQueryClient) Params(ctx context.Context, in *types.QueryParamsRequest, opts ...grpc.CallOption) (*types.QueryParamsResponse, error) { +// Precompile provides a mock function with given fields: ctx, in, opts +func (_m *EVMQueryClient) Precompile(ctx context.Context, in *types.QueryPrecompileRequest, opts ...grpc.CallOption) (*types.QueryPrecompileResponse, error) { _va := make([]interface{}, len(opts)) for _i := range opts { _va[_i] = opts[_i] @@ -355,23 +399,23 @@ func (_m *EVMQueryClient) Params(ctx context.Context, in *types.QueryParamsReque ret := _m.Called(_ca...) if len(ret) == 0 { - panic("no return value specified for Params") + panic("no return value specified for Precompile") } - var r0 *types.QueryParamsResponse + var r0 *types.QueryPrecompileResponse var r1 error - if rf, ok := ret.Get(0).(func(context.Context, *types.QueryParamsRequest, ...grpc.CallOption) (*types.QueryParamsResponse, error)); ok { + if rf, ok := ret.Get(0).(func(context.Context, *types.QueryPrecompileRequest, ...grpc.CallOption) (*types.QueryPrecompileResponse, error)); ok { return rf(ctx, in, opts...) } - if rf, ok := ret.Get(0).(func(context.Context, *types.QueryParamsRequest, ...grpc.CallOption) *types.QueryParamsResponse); ok { + if rf, ok := ret.Get(0).(func(context.Context, *types.QueryPrecompileRequest, ...grpc.CallOption) *types.QueryPrecompileResponse); ok { r0 = rf(ctx, in, opts...) } else { if ret.Get(0) != nil { - r0 = ret.Get(0).(*types.QueryParamsResponse) + r0 = ret.Get(0).(*types.QueryPrecompileResponse) } } - if rf, ok := ret.Get(1).(func(context.Context, *types.QueryParamsRequest, ...grpc.CallOption) error); ok { + if rf, ok := ret.Get(1).(func(context.Context, *types.QueryPrecompileRequest, ...grpc.CallOption) error); ok { r1 = rf(ctx, in, opts...) } else { r1 = ret.Error(1) @@ -570,8 +614,7 @@ func (_m *EVMQueryClient) ValidatorAccount(ctx context.Context, in *types.QueryV func NewEVMQueryClient(t interface { mock.TestingT Cleanup(func()) -}, -) *EVMQueryClient { +}) *EVMQueryClient { mock := &EVMQueryClient{} mock.Mock.Test(t) diff --git a/tests/integration/rpc/backend/test_evm_query_client.go b/tests/integration/rpc/backend/test_evm_query_client.go index efcacaf6e..0279124b5 100644 --- a/tests/integration/rpc/backend/test_evm_query_client.go +++ b/tests/integration/rpc/backend/test_evm_query_client.go @@ -320,3 +320,12 @@ func RegisterGlobalMinGasPrice(queryClient *mocks.EVMQueryClient, height int64) queryClient.On("GlobalMinGasPrice", rpc.ContextWithHeight(height), &evmtypes.QueryGlobalMinGasPriceRequest{}). Return(&evmtypes.QueryGlobalMinGasPriceResponse{MinGasPrice: math.OneInt()}, nil) } + +// Precompile +func RegisterPrecompile(queryClient *mocks.EVMQueryClient, address interface{}) { + ctx, _ := context.WithCancel(rpc.ContextWithHeight(1)) //nolint + queryClient.On("Precompile", ctx, mock.MatchedBy(func(req *evmtypes.QueryPrecompileRequest) bool { + return true + })). + Return(&evmtypes.QueryPrecompileResponse{}, nil) +} diff --git a/x/vm/types/query.pb.go b/x/vm/types/query.pb.go index c007de0a7..3f58751d9 100644 --- a/x/vm/types/query.pb.go +++ b/x/vm/types/query.pb.go @@ -120,6 +120,107 @@ func (m *QueryConfigResponse) GetConfig() *ChainConfig { return nil } +// QueryPrecompileRequest defines the request type for querying if an address is a precompile +type QueryPrecompileRequest struct { + // address is the ethereum hex address to check + Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` +} + +func (m *QueryPrecompileRequest) Reset() { *m = QueryPrecompileRequest{} } +func (m *QueryPrecompileRequest) String() string { return proto.CompactTextString(m) } +func (*QueryPrecompileRequest) ProtoMessage() {} +func (*QueryPrecompileRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_0e8f08e175b3ef0c, []int{2} +} +func (m *QueryPrecompileRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryPrecompileRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryPrecompileRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *QueryPrecompileRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryPrecompileRequest.Merge(m, src) +} +func (m *QueryPrecompileRequest) XXX_Size() int { + return m.Size() +} +func (m *QueryPrecompileRequest) XXX_DiscardUnknown() { + xxx_messageInfo_QueryPrecompileRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_QueryPrecompileRequest proto.InternalMessageInfo + +func (m *QueryPrecompileRequest) GetAddress() string { + if m != nil { + return m.Address + } + return "" +} + +// QueryPrecompileResponse returns information about whether the address is a precompile +type QueryPrecompileResponse struct { + // is_precompile indicates if the address is a precompile contract + IsPrecompile bool `protobuf:"varint,1,opt,name=is_precompile,json=isPrecompile,proto3" json:"is_precompile,omitempty"` + // is_static indicates if it's a static precompile (true) or dynamic precompile (false) + IsStatic bool `protobuf:"varint,2,opt,name=is_static,json=isStatic,proto3" json:"is_static,omitempty"` +} + +func (m *QueryPrecompileResponse) Reset() { *m = QueryPrecompileResponse{} } +func (m *QueryPrecompileResponse) String() string { return proto.CompactTextString(m) } +func (*QueryPrecompileResponse) ProtoMessage() {} +func (*QueryPrecompileResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_0e8f08e175b3ef0c, []int{3} +} +func (m *QueryPrecompileResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryPrecompileResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryPrecompileResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *QueryPrecompileResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryPrecompileResponse.Merge(m, src) +} +func (m *QueryPrecompileResponse) XXX_Size() int { + return m.Size() +} +func (m *QueryPrecompileResponse) XXX_DiscardUnknown() { + xxx_messageInfo_QueryPrecompileResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_QueryPrecompileResponse proto.InternalMessageInfo + +func (m *QueryPrecompileResponse) GetIsPrecompile() bool { + if m != nil { + return m.IsPrecompile + } + return false +} + +func (m *QueryPrecompileResponse) GetIsStatic() bool { + if m != nil { + return m.IsStatic + } + return false +} + // QueryAccountRequest is the request type for the Query/Account RPC method. type QueryAccountRequest struct { // address is the ethereum hex address to query the account for. @@ -130,7 +231,7 @@ func (m *QueryAccountRequest) Reset() { *m = QueryAccountRequest{} } func (m *QueryAccountRequest) String() string { return proto.CompactTextString(m) } func (*QueryAccountRequest) ProtoMessage() {} func (*QueryAccountRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{2} + return fileDescriptor_0e8f08e175b3ef0c, []int{4} } func (m *QueryAccountRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -173,7 +274,7 @@ func (m *QueryAccountResponse) Reset() { *m = QueryAccountResponse{} } func (m *QueryAccountResponse) String() string { return proto.CompactTextString(m) } func (*QueryAccountResponse) ProtoMessage() {} func (*QueryAccountResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{3} + return fileDescriptor_0e8f08e175b3ef0c, []int{5} } func (m *QueryAccountResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -234,7 +335,7 @@ func (m *QueryCosmosAccountRequest) Reset() { *m = QueryCosmosAccountReq func (m *QueryCosmosAccountRequest) String() string { return proto.CompactTextString(m) } func (*QueryCosmosAccountRequest) ProtoMessage() {} func (*QueryCosmosAccountRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{4} + return fileDescriptor_0e8f08e175b3ef0c, []int{6} } func (m *QueryCosmosAccountRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -278,7 +379,7 @@ func (m *QueryCosmosAccountResponse) Reset() { *m = QueryCosmosAccountRe func (m *QueryCosmosAccountResponse) String() string { return proto.CompactTextString(m) } func (*QueryCosmosAccountResponse) ProtoMessage() {} func (*QueryCosmosAccountResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{5} + return fileDescriptor_0e8f08e175b3ef0c, []int{7} } func (m *QueryCosmosAccountResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -339,7 +440,7 @@ func (m *QueryValidatorAccountRequest) Reset() { *m = QueryValidatorAcco func (m *QueryValidatorAccountRequest) String() string { return proto.CompactTextString(m) } func (*QueryValidatorAccountRequest) ProtoMessage() {} func (*QueryValidatorAccountRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{6} + return fileDescriptor_0e8f08e175b3ef0c, []int{8} } func (m *QueryValidatorAccountRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -383,7 +484,7 @@ func (m *QueryValidatorAccountResponse) Reset() { *m = QueryValidatorAcc func (m *QueryValidatorAccountResponse) String() string { return proto.CompactTextString(m) } func (*QueryValidatorAccountResponse) ProtoMessage() {} func (*QueryValidatorAccountResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{7} + return fileDescriptor_0e8f08e175b3ef0c, []int{9} } func (m *QueryValidatorAccountResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -443,7 +544,7 @@ func (m *QueryBalanceRequest) Reset() { *m = QueryBalanceRequest{} } func (m *QueryBalanceRequest) String() string { return proto.CompactTextString(m) } func (*QueryBalanceRequest) ProtoMessage() {} func (*QueryBalanceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{8} + return fileDescriptor_0e8f08e175b3ef0c, []int{10} } func (m *QueryBalanceRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -482,7 +583,7 @@ func (m *QueryBalanceResponse) Reset() { *m = QueryBalanceResponse{} } func (m *QueryBalanceResponse) String() string { return proto.CompactTextString(m) } func (*QueryBalanceResponse) ProtoMessage() {} func (*QueryBalanceResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{9} + return fileDescriptor_0e8f08e175b3ef0c, []int{11} } func (m *QueryBalanceResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -530,7 +631,7 @@ func (m *QueryStorageRequest) Reset() { *m = QueryStorageRequest{} } func (m *QueryStorageRequest) String() string { return proto.CompactTextString(m) } func (*QueryStorageRequest) ProtoMessage() {} func (*QueryStorageRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{10} + return fileDescriptor_0e8f08e175b3ef0c, []int{12} } func (m *QueryStorageRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -570,7 +671,7 @@ func (m *QueryStorageResponse) Reset() { *m = QueryStorageResponse{} } func (m *QueryStorageResponse) String() string { return proto.CompactTextString(m) } func (*QueryStorageResponse) ProtoMessage() {} func (*QueryStorageResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{11} + return fileDescriptor_0e8f08e175b3ef0c, []int{13} } func (m *QueryStorageResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -616,7 +717,7 @@ func (m *QueryCodeRequest) Reset() { *m = QueryCodeRequest{} } func (m *QueryCodeRequest) String() string { return proto.CompactTextString(m) } func (*QueryCodeRequest) ProtoMessage() {} func (*QueryCodeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{12} + return fileDescriptor_0e8f08e175b3ef0c, []int{14} } func (m *QueryCodeRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -656,7 +757,7 @@ func (m *QueryCodeResponse) Reset() { *m = QueryCodeResponse{} } func (m *QueryCodeResponse) String() string { return proto.CompactTextString(m) } func (*QueryCodeResponse) ProtoMessage() {} func (*QueryCodeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{13} + return fileDescriptor_0e8f08e175b3ef0c, []int{15} } func (m *QueryCodeResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -704,7 +805,7 @@ func (m *QueryTxLogsRequest) Reset() { *m = QueryTxLogsRequest{} } func (m *QueryTxLogsRequest) String() string { return proto.CompactTextString(m) } func (*QueryTxLogsRequest) ProtoMessage() {} func (*QueryTxLogsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{14} + return fileDescriptor_0e8f08e175b3ef0c, []int{16} } func (m *QueryTxLogsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -745,7 +846,7 @@ func (m *QueryTxLogsResponse) Reset() { *m = QueryTxLogsResponse{} } func (m *QueryTxLogsResponse) String() string { return proto.CompactTextString(m) } func (*QueryTxLogsResponse) ProtoMessage() {} func (*QueryTxLogsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{15} + return fileDescriptor_0e8f08e175b3ef0c, []int{17} } func (m *QueryTxLogsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -796,7 +897,7 @@ func (m *QueryParamsRequest) Reset() { *m = QueryParamsRequest{} } func (m *QueryParamsRequest) String() string { return proto.CompactTextString(m) } func (*QueryParamsRequest) ProtoMessage() {} func (*QueryParamsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{16} + return fileDescriptor_0e8f08e175b3ef0c, []int{18} } func (m *QueryParamsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -835,7 +936,7 @@ func (m *QueryParamsResponse) Reset() { *m = QueryParamsResponse{} } func (m *QueryParamsResponse) String() string { return proto.CompactTextString(m) } func (*QueryParamsResponse) ProtoMessage() {} func (*QueryParamsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{17} + return fileDescriptor_0e8f08e175b3ef0c, []int{19} } func (m *QueryParamsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -871,6 +972,120 @@ func (m *QueryParamsResponse) GetParams() Params { return Params{} } +// StateEntry defines a single state change operation +type StateEntry struct { + Key []byte `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` + Value []byte `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` + Delete bool `protobuf:"varint,3,opt,name=delete,proto3" json:"delete,omitempty"` +} + +func (m *StateEntry) Reset() { *m = StateEntry{} } +func (m *StateEntry) String() string { return proto.CompactTextString(m) } +func (*StateEntry) ProtoMessage() {} +func (*StateEntry) Descriptor() ([]byte, []int) { + return fileDescriptor_0e8f08e175b3ef0c, []int{20} +} +func (m *StateEntry) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *StateEntry) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_StateEntry.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *StateEntry) XXX_Merge(src proto.Message) { + xxx_messageInfo_StateEntry.Merge(m, src) +} +func (m *StateEntry) XXX_Size() int { + return m.Size() +} +func (m *StateEntry) XXX_DiscardUnknown() { + xxx_messageInfo_StateEntry.DiscardUnknown(m) +} + +var xxx_messageInfo_StateEntry proto.InternalMessageInfo + +func (m *StateEntry) GetKey() []byte { + if m != nil { + return m.Key + } + return nil +} + +func (m *StateEntry) GetValue() []byte { + if m != nil { + return m.Value + } + return nil +} + +func (m *StateEntry) GetDelete() bool { + if m != nil { + return m.Delete + } + return false +} + +// StoreStateDiff defines a set of state changes for a single store +type StoreStateDiff struct { + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Entries []StateEntry `protobuf:"bytes,2,rep,name=entries,proto3" json:"entries"` +} + +func (m *StoreStateDiff) Reset() { *m = StoreStateDiff{} } +func (m *StoreStateDiff) String() string { return proto.CompactTextString(m) } +func (*StoreStateDiff) ProtoMessage() {} +func (*StoreStateDiff) Descriptor() ([]byte, []int) { + return fileDescriptor_0e8f08e175b3ef0c, []int{21} +} +func (m *StoreStateDiff) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *StoreStateDiff) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_StoreStateDiff.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *StoreStateDiff) XXX_Merge(src proto.Message) { + xxx_messageInfo_StoreStateDiff.Merge(m, src) +} +func (m *StoreStateDiff) XXX_Size() int { + return m.Size() +} +func (m *StoreStateDiff) XXX_DiscardUnknown() { + xxx_messageInfo_StoreStateDiff.DiscardUnknown(m) +} + +var xxx_messageInfo_StoreStateDiff proto.InternalMessageInfo + +func (m *StoreStateDiff) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *StoreStateDiff) GetEntries() []StateEntry { + if m != nil { + return m.Entries + } + return nil +} + // EthCallRequest defines EthCall request type EthCallRequest struct { // args uses the same json format as the json rpc api. @@ -883,13 +1098,15 @@ type EthCallRequest struct { ChainId int64 `protobuf:"varint,4,opt,name=chain_id,json=chainId,proto3" json:"chain_id,omitempty"` // state overrides encoded as json Overrides []byte `protobuf:"bytes,5,opt,name=overrides,proto3" json:"overrides,omitempty"` + // state_overrides represents the state overrides before executing the call + StateOverrides []StoreStateDiff `protobuf:"bytes,6,rep,name=state_overrides,json=stateOverrides,proto3" json:"state_overrides"` } func (m *EthCallRequest) Reset() { *m = EthCallRequest{} } func (m *EthCallRequest) String() string { return proto.CompactTextString(m) } func (*EthCallRequest) ProtoMessage() {} func (*EthCallRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{18} + return fileDescriptor_0e8f08e175b3ef0c, []int{22} } func (m *EthCallRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -953,6 +1170,13 @@ func (m *EthCallRequest) GetOverrides() []byte { return nil } +func (m *EthCallRequest) GetStateOverrides() []StoreStateDiff { + if m != nil { + return m.StateOverrides + } + return nil +} + // EstimateGasResponse defines EstimateGas response type EstimateGasResponse struct { // gas returns the estimated gas @@ -968,7 +1192,7 @@ func (m *EstimateGasResponse) Reset() { *m = EstimateGasResponse{} } func (m *EstimateGasResponse) String() string { return proto.CompactTextString(m) } func (*EstimateGasResponse) ProtoMessage() {} func (*EstimateGasResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{19} + return fileDescriptor_0e8f08e175b3ef0c, []int{23} } func (m *EstimateGasResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1045,7 +1269,7 @@ func (m *QueryTraceTxRequest) Reset() { *m = QueryTraceTxRequest{} } func (m *QueryTraceTxRequest) String() string { return proto.CompactTextString(m) } func (*QueryTraceTxRequest) ProtoMessage() {} func (*QueryTraceTxRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{20} + return fileDescriptor_0e8f08e175b3ef0c, []int{24} } func (m *QueryTraceTxRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1147,7 +1371,7 @@ func (m *QueryTraceTxResponse) Reset() { *m = QueryTraceTxResponse{} } func (m *QueryTraceTxResponse) String() string { return proto.CompactTextString(m) } func (*QueryTraceTxResponse) ProtoMessage() {} func (*QueryTraceTxResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{21} + return fileDescriptor_0e8f08e175b3ef0c, []int{25} } func (m *QueryTraceTxResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1207,7 +1431,7 @@ func (m *QueryTraceBlockRequest) Reset() { *m = QueryTraceBlockRequest{} func (m *QueryTraceBlockRequest) String() string { return proto.CompactTextString(m) } func (*QueryTraceBlockRequest) ProtoMessage() {} func (*QueryTraceBlockRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{22} + return fileDescriptor_0e8f08e175b3ef0c, []int{26} } func (m *QueryTraceBlockRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1302,7 +1526,7 @@ func (m *QueryTraceBlockResponse) Reset() { *m = QueryTraceBlockResponse func (m *QueryTraceBlockResponse) String() string { return proto.CompactTextString(m) } func (*QueryTraceBlockResponse) ProtoMessage() {} func (*QueryTraceBlockResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{23} + return fileDescriptor_0e8f08e175b3ef0c, []int{27} } func (m *QueryTraceBlockResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1362,7 +1586,7 @@ func (m *QueryTraceCallRequest) Reset() { *m = QueryTraceCallRequest{} } func (m *QueryTraceCallRequest) String() string { return proto.CompactTextString(m) } func (*QueryTraceCallRequest) ProtoMessage() {} func (*QueryTraceCallRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{24} + return fileDescriptor_0e8f08e175b3ef0c, []int{28} } func (m *QueryTraceCallRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1457,7 +1681,7 @@ func (m *QueryTraceCallResponse) Reset() { *m = QueryTraceCallResponse{} func (m *QueryTraceCallResponse) String() string { return proto.CompactTextString(m) } func (*QueryTraceCallResponse) ProtoMessage() {} func (*QueryTraceCallResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{25} + return fileDescriptor_0e8f08e175b3ef0c, []int{29} } func (m *QueryTraceCallResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1502,7 +1726,7 @@ func (m *QueryBaseFeeRequest) Reset() { *m = QueryBaseFeeRequest{} } func (m *QueryBaseFeeRequest) String() string { return proto.CompactTextString(m) } func (*QueryBaseFeeRequest) ProtoMessage() {} func (*QueryBaseFeeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{26} + return fileDescriptor_0e8f08e175b3ef0c, []int{30} } func (m *QueryBaseFeeRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1541,7 +1765,7 @@ func (m *QueryBaseFeeResponse) Reset() { *m = QueryBaseFeeResponse{} } func (m *QueryBaseFeeResponse) String() string { return proto.CompactTextString(m) } func (*QueryBaseFeeResponse) ProtoMessage() {} func (*QueryBaseFeeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{27} + return fileDescriptor_0e8f08e175b3ef0c, []int{31} } func (m *QueryBaseFeeResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1579,7 +1803,7 @@ func (m *QueryGlobalMinGasPriceRequest) Reset() { *m = QueryGlobalMinGas func (m *QueryGlobalMinGasPriceRequest) String() string { return proto.CompactTextString(m) } func (*QueryGlobalMinGasPriceRequest) ProtoMessage() {} func (*QueryGlobalMinGasPriceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{28} + return fileDescriptor_0e8f08e175b3ef0c, []int{32} } func (m *QueryGlobalMinGasPriceRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1618,7 +1842,7 @@ func (m *QueryGlobalMinGasPriceResponse) Reset() { *m = QueryGlobalMinGa func (m *QueryGlobalMinGasPriceResponse) String() string { return proto.CompactTextString(m) } func (*QueryGlobalMinGasPriceResponse) ProtoMessage() {} func (*QueryGlobalMinGasPriceResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0e8f08e175b3ef0c, []int{29} + return fileDescriptor_0e8f08e175b3ef0c, []int{33} } func (m *QueryGlobalMinGasPriceResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1650,6 +1874,8 @@ var xxx_messageInfo_QueryGlobalMinGasPriceResponse proto.InternalMessageInfo func init() { proto.RegisterType((*QueryConfigRequest)(nil), "cosmos.evm.vm.v1.QueryConfigRequest") proto.RegisterType((*QueryConfigResponse)(nil), "cosmos.evm.vm.v1.QueryConfigResponse") + proto.RegisterType((*QueryPrecompileRequest)(nil), "cosmos.evm.vm.v1.QueryPrecompileRequest") + proto.RegisterType((*QueryPrecompileResponse)(nil), "cosmos.evm.vm.v1.QueryPrecompileResponse") proto.RegisterType((*QueryAccountRequest)(nil), "cosmos.evm.vm.v1.QueryAccountRequest") proto.RegisterType((*QueryAccountResponse)(nil), "cosmos.evm.vm.v1.QueryAccountResponse") proto.RegisterType((*QueryCosmosAccountRequest)(nil), "cosmos.evm.vm.v1.QueryCosmosAccountRequest") @@ -1666,6 +1892,8 @@ func init() { proto.RegisterType((*QueryTxLogsResponse)(nil), "cosmos.evm.vm.v1.QueryTxLogsResponse") proto.RegisterType((*QueryParamsRequest)(nil), "cosmos.evm.vm.v1.QueryParamsRequest") proto.RegisterType((*QueryParamsResponse)(nil), "cosmos.evm.vm.v1.QueryParamsResponse") + proto.RegisterType((*StateEntry)(nil), "cosmos.evm.vm.v1.StateEntry") + proto.RegisterType((*StoreStateDiff)(nil), "cosmos.evm.vm.v1.StoreStateDiff") proto.RegisterType((*EthCallRequest)(nil), "cosmos.evm.vm.v1.EthCallRequest") proto.RegisterType((*EstimateGasResponse)(nil), "cosmos.evm.vm.v1.EstimateGasResponse") proto.RegisterType((*QueryTraceTxRequest)(nil), "cosmos.evm.vm.v1.QueryTraceTxRequest") @@ -1683,115 +1911,127 @@ func init() { func init() { proto.RegisterFile("cosmos/evm/vm/v1/query.proto", fileDescriptor_0e8f08e175b3ef0c) } var fileDescriptor_0e8f08e175b3ef0c = []byte{ - // 1716 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x58, 0xcd, 0x6f, 0xdb, 0x46, - 0x16, 0x37, 0x2d, 0xd9, 0x92, 0x46, 0x76, 0xa2, 0x4c, 0xec, 0x8d, 0xcc, 0xb5, 0x25, 0x87, 0xf1, - 0x77, 0x1c, 0x32, 0xf6, 0x66, 0x17, 0xd8, 0xec, 0x61, 0xd7, 0x36, 0x1c, 0x27, 0x9b, 0x64, 0x91, - 0x55, 0x8d, 0x1e, 0x0a, 0x14, 0xc2, 0x88, 0x9a, 0x50, 0x84, 0x45, 0x52, 0xe1, 0x50, 0xaa, 0x9c, - 0x8f, 0x1e, 0x8a, 0x36, 0x4d, 0x90, 0x4b, 0x8a, 0xde, 0xdb, 0x1c, 0x7b, 0x6b, 0x6f, 0xfd, 0x17, - 0x72, 0x0c, 0x50, 0x14, 0x28, 0x7a, 0x48, 0x8b, 0xa4, 0x40, 0xfb, 0x37, 0xf4, 0x54, 0xcc, 0x07, - 0x25, 0x52, 0x14, 0x25, 0xa7, 0x48, 0xd1, 0x1e, 0x0a, 0x18, 0x09, 0x67, 0xe6, 0xcd, 0x7b, 0xbf, - 0x79, 0xdf, 0x4f, 0x60, 0x56, 0x77, 0x88, 0xe5, 0x10, 0x0d, 0xb7, 0x2c, 0x8d, 0xfe, 0x6d, 0x68, - 0xb7, 0x9a, 0xd8, 0x3d, 0x54, 0x1b, 0xae, 0xe3, 0x39, 0x30, 0xc7, 0x4f, 0x55, 0xdc, 0xb2, 0x54, - 0xfa, 0xb7, 0x21, 0x9f, 0x40, 0x96, 0x69, 0x3b, 0x1a, 0xfb, 0x97, 0x13, 0xc9, 0x6b, 0x82, 0x45, - 0x05, 0x11, 0xcc, 0x6f, 0x6b, 0xad, 0x8d, 0x0a, 0xf6, 0xd0, 0x86, 0xd6, 0x40, 0x86, 0x69, 0x23, - 0xcf, 0x74, 0x6c, 0x41, 0x2b, 0x47, 0xc4, 0x51, 0xd6, 0xfc, 0x6c, 0x26, 0x72, 0xe6, 0xb5, 0xc5, - 0xd1, 0x94, 0xe1, 0x18, 0x0e, 0xfb, 0xd4, 0xe8, 0x97, 0xd8, 0x9d, 0x35, 0x1c, 0xc7, 0xa8, 0x63, - 0x0d, 0x35, 0x4c, 0x0d, 0xd9, 0xb6, 0xe3, 0x31, 0x49, 0x44, 0x9c, 0x16, 0xc5, 0x29, 0x5b, 0x55, - 0x9a, 0x37, 0x35, 0xcf, 0xb4, 0x30, 0xf1, 0x90, 0xd5, 0xe0, 0x04, 0xca, 0x14, 0x80, 0xff, 0xa7, - 0x68, 0x77, 0x1c, 0xfb, 0xa6, 0x69, 0x94, 0xf0, 0xad, 0x26, 0x26, 0x9e, 0x72, 0x0d, 0x9c, 0x0c, - 0xed, 0x92, 0x86, 0x63, 0x13, 0x0c, 0xff, 0x0e, 0xc6, 0x75, 0xb6, 0x93, 0x97, 0xe6, 0xa5, 0x95, - 0xec, 0xe6, 0x9c, 0xda, 0xab, 0x1a, 0x75, 0xa7, 0x86, 0x4c, 0x5b, 0x5c, 0x13, 0xc4, 0xca, 0x3f, - 0x05, 0xb7, 0x2d, 0x5d, 0x77, 0x9a, 0xb6, 0x27, 0x84, 0xc0, 0x3c, 0x48, 0xa1, 0x6a, 0xd5, 0xc5, - 0x84, 0x30, 0x76, 0x99, 0x92, 0xbf, 0xbc, 0x98, 0x7e, 0xf0, 0xa4, 0x38, 0xf2, 0xd3, 0x93, 0xe2, - 0x88, 0xa2, 0x83, 0xa9, 0xf0, 0x55, 0x81, 0x24, 0x0f, 0x52, 0x15, 0x54, 0x47, 0xb6, 0x8e, 0xfd, - 0xbb, 0x62, 0x09, 0xff, 0x0a, 0x32, 0xba, 0x53, 0xc5, 0xe5, 0x1a, 0x22, 0xb5, 0xfc, 0x28, 0x3b, - 0x4b, 0xd3, 0x8d, 0xcb, 0x88, 0xd4, 0xe0, 0x14, 0x18, 0xb3, 0x1d, 0x7a, 0x29, 0x31, 0x2f, 0xad, - 0x24, 0x4b, 0x7c, 0xa1, 0xfc, 0x1b, 0xcc, 0x88, 0xd7, 0xd2, 0xc7, 0xfc, 0x0a, 0x94, 0xf7, 0x25, - 0x20, 0xf7, 0xe3, 0x20, 0xc0, 0x2e, 0x82, 0x63, 0x5c, 0x4f, 0xe5, 0x30, 0xa7, 0x49, 0xbe, 0xbb, - 0xc5, 0x37, 0xa1, 0x0c, 0xd2, 0x84, 0x0a, 0xa5, 0xf8, 0x46, 0x19, 0xbe, 0xce, 0x9a, 0xb2, 0x40, - 0x9c, 0x6b, 0xd9, 0x6e, 0x5a, 0x15, 0xec, 0x8a, 0x17, 0x4c, 0x8a, 0xdd, 0xff, 0xb1, 0x4d, 0xe5, - 0x2a, 0x98, 0x65, 0x38, 0xde, 0x44, 0x75, 0xb3, 0x8a, 0x3c, 0xc7, 0xed, 0x79, 0xcc, 0x69, 0x30, - 0xa1, 0x3b, 0x76, 0x2f, 0x8e, 0x2c, 0xdd, 0xdb, 0x8a, 0xbc, 0xea, 0x91, 0x04, 0xe6, 0x62, 0xb8, - 0x89, 0x87, 0x2d, 0x83, 0xe3, 0x3e, 0xaa, 0x30, 0x47, 0x1f, 0xec, 0x6b, 0x7c, 0x9a, 0xef, 0x44, - 0xdb, 0xdc, 0xce, 0xaf, 0x62, 0x9e, 0xf3, 0xc2, 0x89, 0x3a, 0x57, 0x87, 0x39, 0x91, 0x72, 0x55, - 0x08, 0x7b, 0xc3, 0x73, 0x5c, 0x64, 0x0c, 0x17, 0x06, 0x73, 0x20, 0x71, 0x80, 0x0f, 0x85, 0xbf, - 0xd1, 0xcf, 0x80, 0xf8, 0x75, 0x21, 0xbe, 0xc3, 0x4c, 0x88, 0x9f, 0x02, 0x63, 0x2d, 0x54, 0x6f, - 0xfa, 0xc2, 0xf9, 0x42, 0xf9, 0x07, 0xc8, 0x09, 0x57, 0xaa, 0xbe, 0xd2, 0x23, 0x97, 0xc1, 0x89, - 0xc0, 0x3d, 0x21, 0x02, 0x82, 0x24, 0xf5, 0x7d, 0x76, 0x6b, 0xa2, 0xc4, 0xbe, 0x95, 0xdb, 0x22, - 0xe2, 0xf7, 0xdb, 0xd7, 0x1c, 0x83, 0xf8, 0x22, 0x20, 0x48, 0xb2, 0x88, 0xe1, 0xfc, 0xd9, 0x37, - 0xbc, 0x04, 0x40, 0x37, 0x77, 0xb1, 0xb7, 0x65, 0x37, 0x97, 0xfc, 0x90, 0xa7, 0x89, 0x4e, 0xe5, - 0x69, 0x52, 0x24, 0x3a, 0xf5, 0x46, 0x57, 0x55, 0xa5, 0xc0, 0xcd, 0x00, 0xc8, 0x87, 0x92, 0x50, - 0xac, 0x2f, 0x5c, 0xe0, 0x5c, 0x05, 0xc9, 0xba, 0x63, 0xd0, 0xd7, 0x25, 0x56, 0xb2, 0x9b, 0xd3, - 0xd1, 0xb4, 0x72, 0xcd, 0x31, 0x4a, 0x8c, 0x04, 0xee, 0xf5, 0x01, 0xb5, 0x3c, 0x14, 0x14, 0x97, - 0x13, 0x44, 0xd5, 0xc9, 0x7c, 0x37, 0x90, 0x8b, 0x2c, 0x5f, 0x0f, 0x4a, 0x49, 0x00, 0xf4, 0x77, - 0x05, 0xc0, 0x7f, 0x81, 0xf1, 0x06, 0xdb, 0x11, 0x99, 0x2f, 0x1f, 0x85, 0xc8, 0x6f, 0x6c, 0x67, - 0x9e, 0x3e, 0x2f, 0x8e, 0x7c, 0xf6, 0xe3, 0x17, 0x6b, 0x52, 0x49, 0x5c, 0x51, 0xbe, 0x96, 0xc0, - 0xb1, 0x5d, 0xaf, 0xb6, 0x83, 0xea, 0xf5, 0x80, 0xba, 0x91, 0x6b, 0x10, 0xdf, 0x30, 0xf4, 0x1b, - 0x9e, 0x02, 0x29, 0x03, 0x91, 0xb2, 0x8e, 0x1a, 0x22, 0x46, 0xc6, 0x0d, 0x44, 0x76, 0x50, 0x03, - 0xbe, 0x0d, 0x72, 0x0d, 0xd7, 0x69, 0x38, 0x04, 0xbb, 0x9d, 0x38, 0xa3, 0x31, 0x32, 0xb1, 0xbd, - 0xf9, 0xf3, 0xf3, 0xa2, 0x6a, 0x98, 0x5e, 0xad, 0x59, 0x51, 0x75, 0xc7, 0xd2, 0x44, 0xf1, 0xe0, - 0xff, 0x9d, 0x23, 0xd5, 0x03, 0xcd, 0x3b, 0x6c, 0x60, 0xa2, 0xee, 0x74, 0x03, 0xbc, 0x74, 0xdc, - 0xe7, 0xe5, 0x07, 0xe7, 0x0c, 0x48, 0xeb, 0x34, 0x6b, 0x97, 0xcd, 0x6a, 0x3e, 0x39, 0x2f, 0xad, - 0x24, 0x4a, 0x29, 0xb6, 0xbe, 0x52, 0x85, 0xb3, 0x20, 0xe3, 0xb4, 0xb0, 0xeb, 0x9a, 0x55, 0x4c, - 0xf2, 0x63, 0x0c, 0x6b, 0x77, 0x43, 0xd9, 0x07, 0x27, 0x77, 0x89, 0x67, 0x5a, 0xc8, 0xc3, 0x7b, - 0xa8, 0xab, 0xab, 0x1c, 0x48, 0x18, 0x88, 0x3f, 0x2d, 0x59, 0xa2, 0x9f, 0x74, 0xc7, 0xc5, 0x1e, - 0x7b, 0xd5, 0x44, 0x89, 0x7e, 0x52, 0x99, 0x2d, 0xab, 0x8c, 0x5d, 0xd7, 0xe1, 0xe1, 0x9e, 0x29, - 0xa5, 0x5a, 0xd6, 0x2e, 0x5d, 0x2a, 0x0f, 0x93, 0xbe, 0x8f, 0xb8, 0x48, 0xc7, 0xfb, 0x6d, 0x5f, - 0x65, 0x1b, 0x20, 0x61, 0x11, 0xbf, 0xf2, 0x14, 0xa3, 0xfa, 0xbf, 0x4e, 0x8c, 0x5d, 0xaf, 0x86, - 0x5d, 0xdc, 0xb4, 0xf6, 0xdb, 0x25, 0x4a, 0x0b, 0xff, 0x03, 0x26, 0x3c, 0xca, 0xa4, 0x2c, 0xaa, - 0x56, 0x22, 0xae, 0x6a, 0x31, 0x51, 0xa2, 0x6a, 0x65, 0xbd, 0xee, 0x02, 0xee, 0x80, 0x89, 0x86, - 0x8b, 0xab, 0x58, 0xc7, 0x84, 0x38, 0x2e, 0xc9, 0x27, 0x99, 0x83, 0x0e, 0x95, 0x1e, 0xba, 0x44, - 0xb3, 0x6e, 0xa5, 0xee, 0xe8, 0x07, 0x7e, 0x7e, 0x1b, 0x63, 0x4a, 0xce, 0xb2, 0x3d, 0x9e, 0xdd, - 0xe0, 0x1c, 0x00, 0x9c, 0x84, 0x05, 0xe1, 0x38, 0xd3, 0x48, 0x86, 0xed, 0xb0, 0xba, 0x75, 0xd9, - 0x3f, 0xa6, 0xe5, 0x3b, 0x9f, 0x62, 0xcf, 0x90, 0x55, 0x5e, 0xdb, 0x55, 0xbf, 0xb6, 0xab, 0xfb, - 0x7e, 0x6d, 0xdf, 0x9e, 0xa4, 0x4e, 0xf8, 0xf8, 0xbb, 0xa2, 0xc4, 0x1d, 0x91, 0x73, 0xa2, 0xc7, - 0x7d, 0x7d, 0x29, 0xfd, 0xdb, 0xf8, 0x52, 0x26, 0xec, 0x4b, 0x0a, 0x98, 0xe4, 0x6f, 0xb0, 0x50, - 0xbb, 0x4c, 0x1d, 0x04, 0x04, 0xd4, 0x70, 0x1d, 0xb5, 0xf7, 0x10, 0xf9, 0x6f, 0x32, 0x3d, 0x9a, - 0x4b, 0x94, 0xd2, 0x5e, 0xbb, 0x6c, 0xda, 0x55, 0xdc, 0x56, 0xd6, 0x44, 0xea, 0xec, 0xb8, 0x42, - 0x37, 0xaf, 0x55, 0x91, 0x87, 0xfc, 0xf0, 0xa1, 0xdf, 0xca, 0x97, 0x09, 0xf0, 0x97, 0x2e, 0xf1, - 0x36, 0xe5, 0x1a, 0x70, 0x1d, 0xaf, 0xed, 0x67, 0x97, 0xe1, 0xae, 0xe3, 0xb5, 0xc9, 0x6b, 0x70, - 0x9d, 0x3f, 0xad, 0x7e, 0x44, 0xab, 0x2b, 0xe7, 0xc0, 0xa9, 0x88, 0xe1, 0x06, 0x18, 0xfa, 0xc3, - 0x04, 0x98, 0xee, 0xd2, 0xff, 0x51, 0xb3, 0x6a, 0xaf, 0x03, 0x25, 0x7f, 0x07, 0x07, 0xda, 0x79, - 0x45, 0x07, 0x4a, 0xfb, 0x0e, 0x14, 0xf4, 0x9d, 0xa0, 0x71, 0xd3, 0x21, 0xe3, 0x2a, 0xeb, 0xc1, - 0x88, 0xe3, 0x86, 0x18, 0x60, 0xb7, 0xe9, 0x4e, 0x07, 0x47, 0xf0, 0x25, 0x8c, 0xbb, 0xb3, 0xc6, - 0x54, 0x78, 0x5b, 0xb0, 0xb8, 0x00, 0xd2, 0xb4, 0x9c, 0x97, 0x6f, 0x62, 0xd1, 0x21, 0x6d, 0xcf, - 0x7c, 0xfb, 0xbc, 0x38, 0xcd, 0xf5, 0x47, 0xaa, 0x07, 0xaa, 0xe9, 0x68, 0x16, 0xf2, 0x6a, 0xea, - 0x15, 0xdb, 0xa3, 0x9d, 0x1b, 0xbb, 0xad, 0x14, 0x45, 0xcf, 0xba, 0x57, 0x77, 0x2a, 0xa8, 0x7e, - 0xdd, 0xb4, 0xf7, 0x10, 0xb9, 0xe1, 0x9a, 0x9d, 0x86, 0x51, 0xd1, 0x41, 0x21, 0x8e, 0x40, 0x08, - 0xde, 0x02, 0x93, 0x96, 0x69, 0x53, 0x67, 0x2d, 0x37, 0xe8, 0x81, 0x90, 0x3e, 0x47, 0x95, 0x13, - 0x8f, 0x20, 0x6b, 0x75, 0x59, 0x6d, 0x7e, 0x94, 0x03, 0x63, 0x4c, 0x0a, 0xfc, 0x40, 0x02, 0x29, - 0xd1, 0x36, 0xc3, 0xc5, 0xa8, 0xf1, 0xfb, 0xcc, 0x45, 0xf2, 0xd2, 0x30, 0x32, 0x8e, 0x53, 0x39, - 0xfb, 0xde, 0x57, 0x3f, 0x7c, 0x3c, 0xba, 0x08, 0xcf, 0x68, 0x91, 0x99, 0x51, 0xb4, 0xce, 0xda, - 0x1d, 0xe1, 0xd8, 0xf7, 0xe0, 0x27, 0x12, 0x98, 0x0c, 0x4d, 0x27, 0xf0, 0x6c, 0x8c, 0x98, 0x7e, - 0x53, 0x90, 0xbc, 0x7e, 0x34, 0x62, 0x81, 0x6c, 0x93, 0x21, 0x5b, 0x87, 0x6b, 0x51, 0x64, 0xfe, - 0x20, 0x14, 0x01, 0xf8, 0xb9, 0x04, 0x72, 0xbd, 0x83, 0x06, 0x54, 0x63, 0xc4, 0xc6, 0xcc, 0x37, - 0xb2, 0x76, 0x64, 0x7a, 0x81, 0xf4, 0x22, 0x43, 0x7a, 0x01, 0x6e, 0x46, 0x91, 0xb6, 0xfc, 0x3b, - 0x5d, 0xb0, 0xc1, 0xd9, 0xe9, 0x1e, 0xbc, 0x2f, 0x81, 0x94, 0x18, 0x29, 0x62, 0x4d, 0x1b, 0x9e, - 0x56, 0x62, 0x4d, 0xdb, 0x33, 0x99, 0x28, 0xeb, 0x0c, 0xd6, 0x12, 0x5c, 0x88, 0xc2, 0x12, 0x23, - 0x0a, 0x09, 0xa8, 0xee, 0x91, 0x04, 0x52, 0x62, 0xb8, 0x88, 0x05, 0x12, 0x9e, 0x64, 0x62, 0x81, - 0xf4, 0xcc, 0x28, 0xca, 0x06, 0x03, 0x72, 0x16, 0xae, 0x46, 0x81, 0x10, 0x4e, 0xda, 0xc5, 0xa1, - 0xdd, 0x39, 0xc0, 0x87, 0xf7, 0xe0, 0x6d, 0x90, 0xa4, 0x33, 0x08, 0x54, 0x62, 0x5d, 0xa6, 0x33, - 0xd8, 0xc8, 0x67, 0x06, 0xd2, 0x08, 0x0c, 0xab, 0x0c, 0xc3, 0x19, 0x78, 0xba, 0x9f, 0x37, 0x55, - 0x43, 0x9a, 0x78, 0x07, 0x8c, 0xf3, 0x36, 0x1c, 0x2e, 0xc4, 0x70, 0x0e, 0x75, 0xfb, 0xf2, 0xe2, - 0x10, 0x2a, 0x81, 0x60, 0x9e, 0x21, 0x90, 0x61, 0x3e, 0x8a, 0x80, 0xb7, 0xf8, 0xb0, 0x0d, 0x52, - 0xa2, 0xc3, 0x87, 0xf3, 0x51, 0x9e, 0xe1, 0xe6, 0x5f, 0x5e, 0x1e, 0xd6, 0x81, 0xf8, 0x72, 0x15, - 0x26, 0x77, 0x16, 0xca, 0x51, 0xb9, 0xd8, 0xab, 0x95, 0x75, 0x2a, 0xee, 0x5d, 0x90, 0x0d, 0x34, - 0xe1, 0x47, 0x90, 0xde, 0xe7, 0xcd, 0x7d, 0xba, 0x78, 0x65, 0x89, 0xc9, 0x9e, 0x87, 0x85, 0x3e, - 0xb2, 0x05, 0x39, 0x4d, 0x91, 0xf0, 0x2e, 0x48, 0x89, 0xee, 0x2c, 0xd6, 0xf7, 0xc2, 0x8d, 0x7c, - 0xac, 0xef, 0xf5, 0x34, 0x79, 0x83, 0x5e, 0xcf, 0x2b, 0xab, 0xd7, 0x86, 0x0f, 0x24, 0x00, 0xba, - 0x6d, 0x03, 0x5c, 0x19, 0xc4, 0x3a, 0xd8, 0x12, 0xca, 0xab, 0x47, 0xa0, 0x14, 0x38, 0x16, 0x19, - 0x8e, 0x22, 0x9c, 0x8b, 0xc3, 0xc1, 0x6a, 0x25, 0x7c, 0x5f, 0x02, 0x99, 0x4e, 0x21, 0x84, 0xcb, - 0x83, 0xf8, 0x07, 0xcd, 0xb1, 0x32, 0x9c, 0x50, 0xe0, 0x58, 0x60, 0x38, 0x0a, 0x70, 0x36, 0x0e, - 0x07, 0xf3, 0x87, 0xbb, 0x34, 0x29, 0xb1, 0x5a, 0x38, 0x20, 0x29, 0x05, 0x0b, 0xf0, 0x80, 0xa4, - 0x14, 0x2a, 0xc8, 0x83, 0xec, 0xe1, 0x17, 0x6a, 0x1a, 0x80, 0xa2, 0x7b, 0x59, 0x88, 0x0d, 0xed, - 0xc0, 0x0f, 0x8d, 0xb1, 0x01, 0x18, 0xfe, 0xe1, 0x71, 0x50, 0x00, 0xf2, 0xf6, 0x0a, 0x7e, 0x2a, - 0x81, 0x13, 0x91, 0x92, 0x0e, 0xe3, 0xea, 0x41, 0x5c, 0x77, 0x20, 0x9f, 0x3f, 0xfa, 0x05, 0x01, - 0x6d, 0x99, 0x41, 0x3b, 0x0d, 0x8b, 0x51, 0x68, 0xa1, 0x2e, 0x62, 0xfb, 0xe2, 0xd3, 0x17, 0x05, - 0xe9, 0xd9, 0x8b, 0x82, 0xf4, 0xfd, 0x8b, 0x82, 0xf4, 0xf8, 0x65, 0x61, 0xe4, 0xd9, 0xcb, 0xc2, - 0xc8, 0x37, 0x2f, 0x0b, 0x23, 0x6f, 0xcd, 0x47, 0x7b, 0x4d, 0xca, 0xa4, 0x4d, 0xd9, 0xb0, 0x4e, - 0xb3, 0x32, 0xce, 0x9a, 0xb5, 0xbf, 0xfd, 0x12, 0x00, 0x00, 0xff, 0xff, 0xb2, 0xe7, 0xce, 0x3f, - 0xa9, 0x16, 0x00, 0x00, + // 1910 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x58, 0xcd, 0x6f, 0x24, 0x47, + 0x15, 0x77, 0x7b, 0xc6, 0x9e, 0x99, 0x67, 0x7b, 0xd7, 0x5b, 0xf1, 0x26, 0xb3, 0x83, 0x3d, 0xe3, + 0xed, 0x5d, 0x7f, 0xec, 0xae, 0xd3, 0x1d, 0x9b, 0x80, 0xc4, 0x82, 0x04, 0x6b, 0xe3, 0x38, 0x21, + 0xbb, 0x64, 0xe9, 0x58, 0x1c, 0x40, 0x68, 0x54, 0xd3, 0x53, 0x9e, 0x69, 0x79, 0xba, 0x7b, 0xd2, + 0xd5, 0x36, 0xe3, 0x24, 0xcb, 0x01, 0x41, 0x48, 0x94, 0x4b, 0x10, 0x77, 0xc8, 0x05, 0xc4, 0x0d, + 0x6e, 0xfc, 0x0b, 0x39, 0x46, 0xe2, 0x82, 0x38, 0x2c, 0x68, 0x17, 0x09, 0xfe, 0x06, 0x4e, 0xa8, + 0xaa, 0x5e, 0x4f, 0x77, 0xbb, 0xa7, 0x67, 0xbc, 0x68, 0x11, 0x1c, 0x90, 0x46, 0x76, 0x7d, 0xbc, + 0x8f, 0x5f, 0xbd, 0xf7, 0xea, 0xd5, 0x7b, 0x0d, 0xcb, 0xb6, 0xcf, 0x5d, 0x9f, 0x9b, 0xec, 0xd4, + 0x35, 0xc5, 0x6f, 0xdb, 0x7c, 0xe7, 0x84, 0x05, 0x67, 0x46, 0x3f, 0xf0, 0x43, 0x9f, 0x2c, 0xaa, + 0x5d, 0x83, 0x9d, 0xba, 0x86, 0xf8, 0x6d, 0xd7, 0xae, 0x50, 0xd7, 0xf1, 0x7c, 0x53, 0xfe, 0x55, + 0x44, 0xb5, 0xdb, 0x28, 0xa2, 0x45, 0x39, 0x53, 0xdc, 0xe6, 0xe9, 0x76, 0x8b, 0x85, 0x74, 0xdb, + 0xec, 0xd3, 0x8e, 0xe3, 0xd1, 0xd0, 0xf1, 0x3d, 0xa4, 0xad, 0x65, 0xd4, 0x09, 0xd1, 0x6a, 0xef, + 0x5a, 0x66, 0x2f, 0x1c, 0xe0, 0xd6, 0x52, 0xc7, 0xef, 0xf8, 0x72, 0x68, 0x8a, 0x11, 0xae, 0x2e, + 0x77, 0x7c, 0xbf, 0xd3, 0x63, 0x26, 0xed, 0x3b, 0x26, 0xf5, 0x3c, 0x3f, 0x94, 0x9a, 0x38, 0xee, + 0x36, 0x70, 0x57, 0xce, 0x5a, 0x27, 0x47, 0x66, 0xe8, 0xb8, 0x8c, 0x87, 0xd4, 0xed, 0x2b, 0x02, + 0x7d, 0x09, 0xc8, 0x77, 0x04, 0xda, 0x3d, 0xdf, 0x3b, 0x72, 0x3a, 0x16, 0x7b, 0xe7, 0x84, 0xf1, + 0x50, 0xbf, 0x0f, 0x2f, 0xa4, 0x56, 0x79, 0xdf, 0xf7, 0x38, 0x23, 0x5f, 0x82, 0x59, 0x5b, 0xae, + 0x54, 0xb5, 0x55, 0x6d, 0x73, 0x6e, 0x67, 0xc5, 0x38, 0x6f, 0x1a, 0x63, 0xaf, 0x4b, 0x1d, 0x0f, + 0xd9, 0x90, 0x58, 0xdf, 0x81, 0x17, 0xa5, 0xb4, 0x87, 0x01, 0xb3, 0x7d, 0xb7, 0xef, 0xf4, 0x18, + 0xea, 0x21, 0x55, 0x28, 0xd1, 0x76, 0x3b, 0x60, 0x9c, 0x4b, 0x89, 0x15, 0x2b, 0x9a, 0xea, 0xdf, + 0x87, 0x97, 0x32, 0x3c, 0x88, 0xe2, 0x06, 0x2c, 0x38, 0xbc, 0xd9, 0x1f, 0x6e, 0x48, 0xd6, 0xb2, + 0x35, 0xef, 0xf0, 0x98, 0x98, 0x7c, 0x01, 0x2a, 0x0e, 0x6f, 0x72, 0x61, 0x0d, 0xbb, 0x3a, 0x2d, + 0x09, 0xca, 0x0e, 0x7f, 0x5b, 0xce, 0xf5, 0xaf, 0xe0, 0xf1, 0xee, 0xd9, 0xb6, 0x7f, 0xe2, 0x85, + 0x13, 0xd1, 0xdc, 0x2d, 0x7f, 0xf8, 0x69, 0x63, 0xea, 0x1f, 0x9f, 0x36, 0xa6, 0x74, 0x1b, 0x96, + 0xd2, 0xac, 0x08, 0xaa, 0x0a, 0xa5, 0x16, 0xed, 0x51, 0xcf, 0x66, 0x11, 0x2f, 0x4e, 0x05, 0x12, + 0xdb, 0x6f, 0xb3, 0x66, 0x97, 0xf2, 0xae, 0x44, 0x52, 0xb1, 0xca, 0x62, 0xe1, 0x75, 0xca, 0xbb, + 0x64, 0x09, 0x66, 0x3c, 0x5f, 0x30, 0x15, 0x56, 0xb5, 0xcd, 0xa2, 0xa5, 0x26, 0xfa, 0xd7, 0xe1, + 0x1a, 0x9a, 0x5f, 0x58, 0xf7, 0xdf, 0x40, 0xf9, 0x81, 0x06, 0xb5, 0x51, 0x12, 0x10, 0xec, 0x1a, + 0x5c, 0x52, 0x8e, 0x6b, 0xa6, 0x25, 0x2d, 0xa8, 0xd5, 0x7b, 0x6a, 0x91, 0xd4, 0xa0, 0xcc, 0x85, + 0x52, 0x81, 0x6f, 0x5a, 0xe2, 0x1b, 0xce, 0x85, 0x08, 0xaa, 0xa4, 0x36, 0xbd, 0x13, 0xb7, 0xc5, + 0x02, 0x3c, 0xc1, 0x02, 0xae, 0x7e, 0x5b, 0x2e, 0xea, 0x6f, 0xc2, 0xb2, 0xc4, 0xf1, 0x5d, 0xda, + 0x73, 0xda, 0x34, 0xf4, 0x83, 0x73, 0x87, 0xb9, 0x0e, 0xf3, 0xb6, 0xef, 0x9d, 0xc7, 0x31, 0x27, + 0xd6, 0xee, 0x65, 0x4e, 0xf5, 0xb1, 0x06, 0x2b, 0x39, 0xd2, 0xf0, 0x60, 0x1b, 0x70, 0x39, 0x42, + 0x95, 0x96, 0x18, 0x81, 0x7d, 0x8e, 0x47, 0x8b, 0x82, 0x68, 0x57, 0xf9, 0xf9, 0x59, 0xdc, 0xf3, + 0x0a, 0x06, 0xd1, 0x90, 0x75, 0x52, 0x10, 0xe9, 0x6f, 0xa2, 0xb2, 0xb7, 0x43, 0x3f, 0xa0, 0x9d, + 0xc9, 0xca, 0xc8, 0x22, 0x14, 0x8e, 0xd9, 0x19, 0xc6, 0x9b, 0x18, 0x26, 0xd4, 0x6f, 0xa1, 0xfa, + 0xa1, 0x30, 0x54, 0xbf, 0x04, 0x33, 0xa7, 0xb4, 0x77, 0x12, 0x29, 0x57, 0x13, 0xfd, 0xcb, 0xb0, + 0x88, 0xa1, 0xd4, 0x7e, 0xa6, 0x43, 0x6e, 0xc0, 0x95, 0x04, 0x1f, 0xaa, 0x20, 0x50, 0x14, 0xb1, + 0x2f, 0xb9, 0xe6, 0x2d, 0x39, 0xd6, 0xdf, 0xc5, 0x14, 0x74, 0x38, 0xb8, 0xef, 0x77, 0x78, 0xa4, + 0x82, 0x40, 0x51, 0xde, 0x18, 0x25, 0x5f, 0x8e, 0xc9, 0x6b, 0x00, 0x71, 0x32, 0x95, 0x67, 0x9b, + 0xdb, 0x59, 0x8f, 0x72, 0x90, 0xc8, 0xbc, 0x86, 0xca, 0xdb, 0x98, 0x79, 0x8d, 0x87, 0xb1, 0xa9, + 0xac, 0x04, 0x67, 0x02, 0xe4, 0x47, 0x1a, 0x1a, 0x36, 0x52, 0x8e, 0x38, 0x6f, 0x41, 0xb1, 0xe7, + 0x77, 0xc4, 0xe9, 0x0a, 0x9b, 0x73, 0x3b, 0x57, 0xb3, 0x79, 0xee, 0xbe, 0xdf, 0xb1, 0x24, 0x09, + 0x39, 0x18, 0x01, 0x6a, 0x63, 0x22, 0x28, 0xa5, 0x27, 0x89, 0x6a, 0x98, 0x8a, 0x1f, 0xd2, 0x80, + 0xba, 0x91, 0x1d, 0x74, 0x0b, 0x01, 0x46, 0xab, 0x08, 0xf0, 0xab, 0x30, 0xdb, 0x97, 0x2b, 0x98, + 0x8a, 0xab, 0x59, 0x88, 0x8a, 0x63, 0xb7, 0xf2, 0xd9, 0xe3, 0xc6, 0xd4, 0x6f, 0xff, 0xfe, 0xfb, + 0xdb, 0x9a, 0x85, 0x2c, 0xfa, 0x7d, 0x00, 0x91, 0x09, 0xd9, 0xbe, 0x17, 0x06, 0x67, 0x51, 0xa8, + 0x28, 0x97, 0x88, 0x61, 0x1c, 0x08, 0xd3, 0x72, 0x4d, 0x4d, 0xc8, 0x8b, 0x30, 0xdb, 0x66, 0x3d, + 0x16, 0xaa, 0x64, 0x55, 0xb6, 0x70, 0xa6, 0xb7, 0xe0, 0x92, 0x88, 0x24, 0x26, 0x45, 0x7e, 0xd3, + 0x39, 0x3a, 0x12, 0xbe, 0xf3, 0xa8, 0x1b, 0xc5, 0x91, 0x1c, 0x93, 0xaf, 0x41, 0x89, 0x79, 0x61, + 0xe0, 0x30, 0x5e, 0x9d, 0x96, 0x46, 0x5d, 0xce, 0x22, 0x8e, 0x41, 0xed, 0x16, 0x05, 0x6a, 0x2b, + 0x62, 0xd1, 0x7f, 0x33, 0x0d, 0x97, 0xf6, 0xc3, 0xee, 0x1e, 0xed, 0xf5, 0x12, 0x01, 0x42, 0x83, + 0x0e, 0x8f, 0x42, 0x49, 0x8c, 0xc9, 0x4b, 0x50, 0xea, 0x50, 0xde, 0xb4, 0x69, 0x1f, 0x6f, 0xf5, + 0x6c, 0x87, 0xf2, 0x3d, 0xda, 0x27, 0x3f, 0x80, 0xc5, 0x7e, 0xe0, 0xf7, 0x7d, 0xce, 0x82, 0x61, + 0x66, 0x10, 0xa7, 0x98, 0xdf, 0xdd, 0xf9, 0xe7, 0xe3, 0x86, 0xd1, 0x71, 0xc2, 0xee, 0x49, 0xcb, + 0xb0, 0x7d, 0xd7, 0xc4, 0xf7, 0x57, 0xfd, 0x7b, 0x99, 0xb7, 0x8f, 0xcd, 0xf0, 0xac, 0xcf, 0xb8, + 0xb1, 0x17, 0xa7, 0x24, 0xeb, 0x72, 0x24, 0x2b, 0x4a, 0x27, 0xd7, 0xa0, 0x6c, 0x8b, 0x87, 0xaf, + 0xe9, 0xb4, 0xab, 0xc5, 0x55, 0x6d, 0xb3, 0x60, 0x95, 0xe4, 0xfc, 0x8d, 0x36, 0x59, 0x86, 0x8a, + 0x7f, 0xca, 0x82, 0xc0, 0x69, 0x33, 0x5e, 0x9d, 0x91, 0x58, 0xe3, 0x05, 0xf2, 0x16, 0x5c, 0x16, + 0x6f, 0x14, 0x6b, 0xc6, 0x34, 0xb3, 0xd2, 0x3a, 0xab, 0xa3, 0xac, 0x93, 0x34, 0x32, 0x5a, 0xe8, + 0x92, 0x64, 0x7f, 0x2b, 0xe2, 0xd6, 0x0f, 0xe1, 0x85, 0x7d, 0x1e, 0x3a, 0x2e, 0x0d, 0xd9, 0x01, + 0x8d, 0xc3, 0x65, 0x11, 0x0a, 0x1d, 0xaa, 0x6c, 0x55, 0xb4, 0xc4, 0x50, 0xac, 0x04, 0x2c, 0x44, + 0x0f, 0x8b, 0xa1, 0x38, 0xc4, 0xa9, 0xdb, 0x64, 0x41, 0xe0, 0xab, 0x8c, 0x57, 0xb1, 0x4a, 0xa7, + 0xee, 0xbe, 0x98, 0xea, 0x1f, 0x15, 0xa3, 0x6b, 0x12, 0x50, 0x9b, 0x1d, 0x0e, 0x22, 0x1f, 0x6c, + 0x43, 0xc1, 0xe5, 0x51, 0x35, 0xd0, 0xc8, 0x42, 0x7e, 0xc0, 0x3b, 0xfb, 0x61, 0x97, 0x05, 0xec, + 0xc4, 0x3d, 0x1c, 0x58, 0x82, 0x96, 0x7c, 0x03, 0xe6, 0x43, 0x21, 0xa4, 0x89, 0x95, 0x44, 0x21, + 0xaf, 0x92, 0x90, 0xaa, 0xb0, 0x92, 0x98, 0x0b, 0xe3, 0x09, 0xd9, 0x83, 0xf9, 0x7e, 0xc0, 0xda, + 0xcc, 0x66, 0x9c, 0xfb, 0x01, 0xaf, 0x16, 0xa5, 0xc1, 0x26, 0x6a, 0x4f, 0x31, 0x89, 0x87, 0xa7, + 0xd5, 0xf3, 0xed, 0xe3, 0x28, 0xc5, 0xcf, 0x48, 0xaf, 0xcd, 0xc9, 0x35, 0x95, 0xe0, 0xc9, 0x0a, + 0x80, 0x22, 0x91, 0x79, 0x68, 0x56, 0x5a, 0xa4, 0x22, 0x57, 0xe4, 0xd3, 0xfd, 0x7a, 0xb4, 0x2d, + 0x4a, 0xaa, 0x6a, 0x49, 0x1e, 0xa3, 0x66, 0xa8, 0x7a, 0xcb, 0x88, 0xea, 0x2d, 0xe3, 0x30, 0xaa, + 0xb7, 0x76, 0x17, 0x84, 0xbf, 0x3e, 0xf9, 0x4b, 0x43, 0x53, 0x77, 0x51, 0x49, 0x12, 0xdb, 0x23, + 0x83, 0xb3, 0xfc, 0x9f, 0x09, 0xce, 0x4a, 0x3a, 0x38, 0x75, 0x58, 0x50, 0x67, 0x70, 0xe9, 0xa0, + 0x29, 0x02, 0x04, 0x12, 0x66, 0x78, 0x40, 0x07, 0x07, 0x94, 0x7f, 0xab, 0x58, 0x9e, 0x5e, 0x2c, + 0x58, 0xe5, 0x70, 0xd0, 0x74, 0xbc, 0x36, 0x1b, 0xe8, 0xb7, 0xf1, 0xf5, 0x18, 0x86, 0x42, 0x9c, + 0xda, 0xdb, 0x34, 0xa4, 0xd1, 0x7d, 0x14, 0x63, 0xfd, 0x0f, 0x05, 0x2c, 0xfd, 0x24, 0xf1, 0xae, + 0x90, 0x9a, 0x08, 0x9d, 0x70, 0x10, 0x25, 0xd8, 0xc9, 0xa1, 0x13, 0x0e, 0xf8, 0x73, 0x08, 0x9d, + 0xff, 0x7b, 0xfd, 0x82, 0x5e, 0xd7, 0x5f, 0xc6, 0xfa, 0x3b, 0xe9, 0xb8, 0x31, 0x8e, 0xfe, 0x59, + 0x01, 0xae, 0xc6, 0xf4, 0xff, 0xab, 0x69, 0xfa, 0x7c, 0x00, 0x15, 0xff, 0x0b, 0x01, 0xb4, 0xf7, + 0x8c, 0x01, 0x54, 0x8e, 0x02, 0x28, 0x19, 0x3b, 0x49, 0xe7, 0x96, 0x53, 0xce, 0xd5, 0xb7, 0x92, + 0x37, 0x4e, 0x39, 0x62, 0x8c, 0xdf, 0xae, 0x0e, 0x8b, 0x58, 0xce, 0x5e, 0x63, 0x2c, 0xee, 0xff, + 0x96, 0xd2, 0xcb, 0x28, 0xe2, 0x55, 0x28, 0x8b, 0x8a, 0xa6, 0x79, 0xc4, 0xf0, 0x71, 0xdf, 0xbd, + 0xf6, 0xe7, 0xc7, 0x8d, 0xab, 0xca, 0x7e, 0xbc, 0x7d, 0x6c, 0x38, 0xbe, 0xe9, 0xd2, 0xb0, 0x6b, + 0xbc, 0xe1, 0x85, 0xa2, 0x78, 0x95, 0xdc, 0x7a, 0x03, 0xcb, 0xf6, 0x83, 0x9e, 0xdf, 0xa2, 0xbd, + 0x07, 0x8e, 0x77, 0x40, 0xf9, 0xc3, 0xc0, 0x19, 0xd6, 0xcc, 0xba, 0x0d, 0xf5, 0x3c, 0x02, 0x54, + 0x7c, 0x0f, 0x16, 0x5c, 0xc7, 0x13, 0xc1, 0xda, 0xec, 0x8b, 0x0d, 0xd4, 0xbe, 0x22, 0x8c, 0x93, + 0x8f, 0x60, 0xce, 0x8d, 0x45, 0xed, 0xfc, 0xfa, 0x0a, 0xcc, 0x48, 0x2d, 0xe4, 0xa7, 0x1a, 0x94, + 0xb0, 0x73, 0x20, 0x6b, 0x59, 0xe7, 0x8f, 0x68, 0x0d, 0x6b, 0xeb, 0x93, 0xc8, 0x14, 0x4e, 0xfd, + 0xce, 0x8f, 0xff, 0xf8, 0xb7, 0x5f, 0x4c, 0xaf, 0x91, 0x1b, 0x66, 0xa6, 0x8f, 0xc7, 0xee, 0xc1, + 0x7c, 0x0f, 0x03, 0xfb, 0x11, 0xf9, 0xa5, 0x06, 0x0b, 0xa9, 0x06, 0x8d, 0xdc, 0xc9, 0x51, 0x33, + 0xaa, 0x11, 0xac, 0x6d, 0x5d, 0x8c, 0x18, 0x91, 0xed, 0x48, 0x64, 0x5b, 0xe4, 0x76, 0x16, 0x59, + 0xd4, 0x0b, 0x66, 0x00, 0xfe, 0x4e, 0x83, 0xc5, 0xf3, 0xbd, 0x16, 0x31, 0x72, 0xd4, 0xe6, 0xb4, + 0x78, 0x35, 0xf3, 0xc2, 0xf4, 0x88, 0xf4, 0xae, 0x44, 0xfa, 0x2a, 0xd9, 0xc9, 0x22, 0x3d, 0x8d, + 0x78, 0x62, 0xb0, 0xc9, 0xf6, 0xf1, 0x11, 0xf9, 0x40, 0x83, 0x12, 0x76, 0x55, 0xb9, 0xae, 0x4d, + 0x37, 0x6c, 0xb9, 0xae, 0x3d, 0xd7, 0x9c, 0xe9, 0x5b, 0x12, 0xd6, 0x3a, 0xb9, 0x99, 0x85, 0x85, + 0x5d, 0x1a, 0x4f, 0x98, 0xee, 0x63, 0x0d, 0x4a, 0xd8, 0x5f, 0xe5, 0x02, 0x49, 0x37, 0x73, 0xb9, + 0x40, 0xce, 0xb5, 0x69, 0xfa, 0xb6, 0x04, 0x72, 0x87, 0xdc, 0xca, 0x02, 0xe1, 0x8a, 0x34, 0xc6, + 0x61, 0xbe, 0x77, 0xcc, 0xce, 0x1e, 0x91, 0x77, 0xa1, 0x28, 0xda, 0x30, 0xa2, 0xe7, 0x86, 0xcc, + 0xb0, 0xb7, 0xab, 0xdd, 0x18, 0x4b, 0x83, 0x18, 0x6e, 0x49, 0x0c, 0x37, 0xc8, 0xf5, 0x51, 0xd1, + 0xd4, 0x4e, 0x59, 0xe2, 0x87, 0x30, 0xab, 0x3a, 0x11, 0x72, 0x33, 0x47, 0x72, 0xaa, 0xe1, 0xa9, + 0xad, 0x4d, 0xa0, 0x42, 0x04, 0xab, 0x12, 0x41, 0x8d, 0x54, 0xb3, 0x08, 0x54, 0x97, 0x43, 0x06, + 0x50, 0xc2, 0x96, 0x81, 0x8c, 0xa8, 0xa6, 0xd3, 0xdd, 0x44, 0x6d, 0x63, 0x52, 0x05, 0x12, 0xe9, + 0xd5, 0xa5, 0xde, 0x65, 0x52, 0xcb, 0xea, 0x65, 0x61, 0xb7, 0x69, 0x0b, 0x75, 0x3f, 0x82, 0xb9, + 0x44, 0x11, 0x7e, 0x01, 0xed, 0x23, 0xce, 0x3c, 0xa2, 0x8a, 0xd7, 0xd7, 0xa5, 0xee, 0x55, 0x52, + 0x1f, 0xa1, 0x1b, 0xc9, 0x45, 0x8a, 0x24, 0xef, 0x43, 0x09, 0xab, 0xb3, 0xdc, 0xd8, 0x4b, 0x17, + 0xf2, 0xb9, 0xb1, 0x77, 0xae, 0xc8, 0x1b, 0x77, 0x7a, 0xf5, 0xb2, 0x86, 0x03, 0xf2, 0xa1, 0x06, + 0x10, 0x97, 0x0d, 0x64, 0x73, 0x9c, 0xe8, 0x64, 0x49, 0x58, 0xbb, 0x75, 0x01, 0x4a, 0xc4, 0xb1, + 0x26, 0x71, 0x34, 0xc8, 0x4a, 0x1e, 0x0e, 0xf9, 0x56, 0x92, 0x9f, 0x68, 0x50, 0x19, 0x3e, 0x84, + 0x64, 0x63, 0x9c, 0xfc, 0xa4, 0x3b, 0x36, 0x27, 0x13, 0x22, 0x8e, 0x9b, 0x12, 0x47, 0x9d, 0x2c, + 0xe7, 0xe1, 0x90, 0xf1, 0xf0, 0xbe, 0x48, 0x4a, 0xf2, 0x2d, 0x1c, 0x93, 0x94, 0x92, 0x0f, 0xf0, + 0x98, 0xa4, 0x94, 0x7a, 0x90, 0xc7, 0xf9, 0x23, 0x7a, 0xa8, 0xc5, 0x05, 0xc4, 0xea, 0xe5, 0x66, + 0xee, 0xd5, 0x4e, 0x7c, 0xfc, 0xcd, 0xbd, 0x80, 0xe9, 0x8f, 0xc1, 0xe3, 0x2e, 0xa0, 0x2a, 0xaf, + 0xc8, 0xcf, 0x35, 0x80, 0xc4, 0x27, 0xd9, 0x3c, 0xab, 0x66, 0x3e, 0x0b, 0xe7, 0x06, 0x42, 0xf6, + 0x63, 0xb0, 0x6e, 0x48, 0x14, 0x9b, 0x64, 0x7d, 0x44, 0x1a, 0x18, 0x52, 0x27, 0xb2, 0xd1, 0xaf, + 0x34, 0xb8, 0x92, 0x29, 0x33, 0x48, 0xde, 0x1b, 0x95, 0x57, 0xb1, 0xd4, 0x5e, 0xb9, 0x38, 0x03, + 0x02, 0xdd, 0x90, 0x40, 0xaf, 0x93, 0x46, 0x16, 0x68, 0xaa, 0xb2, 0xd9, 0xbd, 0xfb, 0xd9, 0x93, + 0xba, 0xf6, 0xf9, 0x93, 0xba, 0xf6, 0xd7, 0x27, 0x75, 0xed, 0x93, 0xa7, 0xf5, 0xa9, 0xcf, 0x9f, + 0xd6, 0xa7, 0xfe, 0xf4, 0xb4, 0x3e, 0xf5, 0xbd, 0xd5, 0x6c, 0xfd, 0x2b, 0x84, 0x0c, 0x84, 0x18, + 0x59, 0xfd, 0xb6, 0x66, 0x65, 0x01, 0xf9, 0xc5, 0x7f, 0x05, 0x00, 0x00, 0xff, 0xff, 0x8d, 0xd3, + 0x02, 0x95, 0xd1, 0x18, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -1839,6 +2079,8 @@ type QueryClient interface { BaseFee(ctx context.Context, in *QueryBaseFeeRequest, opts ...grpc.CallOption) (*QueryBaseFeeResponse, error) // Config queries the EVM configuration Config(ctx context.Context, in *QueryConfigRequest, opts ...grpc.CallOption) (*QueryConfigResponse, error) + // Precompile queries if an address is a precompile (static or dynamic) + Precompile(ctx context.Context, in *QueryPrecompileRequest, opts ...grpc.CallOption) (*QueryPrecompileResponse, error) // GlobalMinGasPrice queries the MinGasPrice // it's similar to feemarket module's method, // but makes the conversion to 18 decimals @@ -1980,6 +2222,15 @@ func (c *queryClient) Config(ctx context.Context, in *QueryConfigRequest, opts . return out, nil } +func (c *queryClient) Precompile(ctx context.Context, in *QueryPrecompileRequest, opts ...grpc.CallOption) (*QueryPrecompileResponse, error) { + out := new(QueryPrecompileResponse) + err := c.cc.Invoke(ctx, "/cosmos.evm.vm.v1.Query/Precompile", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *queryClient) GlobalMinGasPrice(ctx context.Context, in *QueryGlobalMinGasPriceRequest, opts ...grpc.CallOption) (*QueryGlobalMinGasPriceResponse, error) { out := new(QueryGlobalMinGasPriceResponse) err := c.cc.Invoke(ctx, "/cosmos.evm.vm.v1.Query/GlobalMinGasPrice", in, out, opts...) @@ -2024,6 +2275,8 @@ type QueryServer interface { BaseFee(context.Context, *QueryBaseFeeRequest) (*QueryBaseFeeResponse, error) // Config queries the EVM configuration Config(context.Context, *QueryConfigRequest) (*QueryConfigResponse, error) + // Precompile queries if an address is a precompile (static or dynamic) + Precompile(context.Context, *QueryPrecompileRequest) (*QueryPrecompileResponse, error) // GlobalMinGasPrice queries the MinGasPrice // it's similar to feemarket module's method, // but makes the conversion to 18 decimals @@ -2077,6 +2330,9 @@ func (*UnimplementedQueryServer) BaseFee(ctx context.Context, req *QueryBaseFeeR func (*UnimplementedQueryServer) Config(ctx context.Context, req *QueryConfigRequest) (*QueryConfigResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method Config not implemented") } +func (*UnimplementedQueryServer) Precompile(ctx context.Context, req *QueryPrecompileRequest) (*QueryPrecompileResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Precompile not implemented") +} func (*UnimplementedQueryServer) GlobalMinGasPrice(ctx context.Context, req *QueryGlobalMinGasPriceRequest) (*QueryGlobalMinGasPriceResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method GlobalMinGasPrice not implemented") } @@ -2337,6 +2593,24 @@ func _Query_Config_Handler(srv interface{}, ctx context.Context, dec func(interf return interceptor(ctx, in, info, handler) } +func _Query_Precompile_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryPrecompileRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(QueryServer).Precompile(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/cosmos.evm.vm.v1.Query/Precompile", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).Precompile(ctx, req.(*QueryPrecompileRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _Query_GlobalMinGasPrice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(QueryGlobalMinGasPriceRequest) if err := dec(in); err != nil { @@ -2415,6 +2689,10 @@ var _Query_serviceDesc = grpc.ServiceDesc{ MethodName: "Config", Handler: _Query_Config_Handler, }, + { + MethodName: "Precompile", + Handler: _Query_Precompile_Handler, + }, { MethodName: "GlobalMinGasPrice", Handler: _Query_GlobalMinGasPrice_Handler, @@ -2482,7 +2760,7 @@ func (m *QueryConfigResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *QueryAccountRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryPrecompileRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -2492,12 +2770,12 @@ func (m *QueryAccountRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryAccountRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryPrecompileRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryAccountRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryPrecompileRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -2512,7 +2790,7 @@ func (m *QueryAccountRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *QueryAccountResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryPrecompileResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -2522,39 +2800,40 @@ func (m *QueryAccountResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryAccountResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryPrecompileResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryAccountResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryPrecompileResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.Nonce != 0 { - i = encodeVarintQuery(dAtA, i, uint64(m.Nonce)) + if m.IsStatic { i-- - dAtA[i] = 0x18 - } - if len(m.CodeHash) > 0 { - i -= len(m.CodeHash) - copy(dAtA[i:], m.CodeHash) - i = encodeVarintQuery(dAtA, i, uint64(len(m.CodeHash))) + if m.IsStatic { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } i-- - dAtA[i] = 0x12 + dAtA[i] = 0x10 } - if len(m.Balance) > 0 { - i -= len(m.Balance) - copy(dAtA[i:], m.Balance) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Balance))) + if m.IsPrecompile { i-- - dAtA[i] = 0xa + if m.IsPrecompile { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x8 } return len(dAtA) - i, nil } -func (m *QueryCosmosAccountRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryAccountRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -2564,12 +2843,12 @@ func (m *QueryCosmosAccountRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryCosmosAccountRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryAccountRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryCosmosAccountRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryAccountRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -2584,7 +2863,7 @@ func (m *QueryCosmosAccountRequest) MarshalToSizedBuffer(dAtA []byte) (int, erro return len(dAtA) - i, nil } -func (m *QueryCosmosAccountResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryAccountResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -2594,27 +2873,99 @@ func (m *QueryCosmosAccountResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *QueryCosmosAccountResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryAccountResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryCosmosAccountResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryAccountResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.AccountNumber != 0 { - i = encodeVarintQuery(dAtA, i, uint64(m.AccountNumber)) + if m.Nonce != 0 { + i = encodeVarintQuery(dAtA, i, uint64(m.Nonce)) i-- dAtA[i] = 0x18 } - if m.Sequence != 0 { - i = encodeVarintQuery(dAtA, i, uint64(m.Sequence)) + if len(m.CodeHash) > 0 { + i -= len(m.CodeHash) + copy(dAtA[i:], m.CodeHash) + i = encodeVarintQuery(dAtA, i, uint64(len(m.CodeHash))) i-- - dAtA[i] = 0x10 + dAtA[i] = 0x12 } - if len(m.CosmosAddress) > 0 { + if len(m.Balance) > 0 { + i -= len(m.Balance) + copy(dAtA[i:], m.Balance) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Balance))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QueryCosmosAccountRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryCosmosAccountRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryCosmosAccountRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Address) > 0 { + i -= len(m.Address) + copy(dAtA[i:], m.Address) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Address))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QueryCosmosAccountResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryCosmosAccountResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryCosmosAccountResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.AccountNumber != 0 { + i = encodeVarintQuery(dAtA, i, uint64(m.AccountNumber)) + i-- + dAtA[i] = 0x18 + } + if m.Sequence != 0 { + i = encodeVarintQuery(dAtA, i, uint64(m.Sequence)) + i-- + dAtA[i] = 0x10 + } + if len(m.CosmosAddress) > 0 { i -= len(m.CosmosAddress) copy(dAtA[i:], m.CosmosAddress) i = encodeVarintQuery(dAtA, i, uint64(len(m.CosmosAddress))) @@ -3028,6 +3379,97 @@ func (m *QueryParamsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *StateEntry) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *StateEntry) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *StateEntry) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Delete { + i-- + if m.Delete { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x18 + } + if len(m.Value) > 0 { + i -= len(m.Value) + copy(dAtA[i:], m.Value) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Value))) + i-- + dAtA[i] = 0x12 + } + if len(m.Key) > 0 { + i -= len(m.Key) + copy(dAtA[i:], m.Key) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Key))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *StoreStateDiff) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *StoreStateDiff) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *StoreStateDiff) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Entries) > 0 { + for iNdEx := len(m.Entries) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Entries[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if len(m.Name) > 0 { + i -= len(m.Name) + copy(dAtA[i:], m.Name) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Name))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + func (m *EthCallRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -3048,6 +3490,20 @@ func (m *EthCallRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if len(m.StateOverrides) > 0 { + for iNdEx := len(m.StateOverrides) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.StateOverrides[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + } + } if len(m.Overrides) > 0 { i -= len(m.Overrides) copy(dAtA[i:], m.Overrides) @@ -3624,6 +4080,34 @@ func (m *QueryConfigResponse) Size() (n int) { return n } +func (m *QueryPrecompileRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Address) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + return n +} + +func (m *QueryPrecompileResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.IsPrecompile { + n += 2 + } + if m.IsStatic { + n += 2 + } + return n +} + func (m *QueryAccountRequest) Size() (n int) { if m == nil { return 0 @@ -3859,6 +4343,45 @@ func (m *QueryParamsResponse) Size() (n int) { return n } +func (m *StateEntry) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Key) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + l = len(m.Value) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + if m.Delete { + n += 2 + } + return n +} + +func (m *StoreStateDiff) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Name) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + if len(m.Entries) > 0 { + for _, e := range m.Entries { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } + } + return n +} + func (m *EthCallRequest) Size() (n int) { if m == nil { return 0 @@ -3883,6 +4406,12 @@ func (m *EthCallRequest) Size() (n int) { if l > 0 { n += 1 + l + sovQuery(uint64(l)) } + if len(m.StateOverrides) > 0 { + for _, e := range m.StateOverrides { + l = e.Size() + n += 1 + l + sovQuery(uint64(l)) + } + } return n } @@ -4245,7 +4774,7 @@ func (m *QueryConfigResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryAccountRequest) Unmarshal(dAtA []byte) error { +func (m *QueryPrecompileRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -4268,10 +4797,10 @@ func (m *QueryAccountRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryAccountRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryPrecompileRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryAccountRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryPrecompileRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -4327,7 +4856,7 @@ func (m *QueryAccountRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryAccountResponse) Unmarshal(dAtA []byte) error { +func (m *QueryPrecompileResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -4350,17 +4879,17 @@ func (m *QueryAccountResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryAccountResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryPrecompileResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryAccountResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryPrecompileResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Balance", wireType) + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IsPrecompile", wireType) } - var stringLen uint64 + var v int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -4370,29 +4899,17 @@ func (m *QueryAccountResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + v |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Balance = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex + m.IsPrecompile = bool(v != 0) case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CodeHash", wireType) + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IsStatic", wireType) } - var stringLen uint64 + var v int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowQuery @@ -4402,25 +4919,209 @@ func (m *QueryAccountResponse) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + v |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery + m.IsStatic = bool(v != 0) + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err } - postIndex := iNdEx + intStringLen - if postIndex < 0 { + if (skippy < 0) || (iNdEx+skippy) < 0 { return ErrInvalidLengthQuery } - if postIndex > l { + if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF } - m.CodeHash = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryAccountRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryAccountRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryAccountRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Address = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryAccountResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryAccountResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryAccountResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Balance", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Balance = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CodeHash", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.CodeHash = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: if wireType != 0 { return fmt.Errorf("proto: wrong wireType = %d for field Nonce", wireType) } @@ -5761,6 +6462,260 @@ func (m *QueryParamsResponse) Unmarshal(dAtA []byte) error { } return nil } +func (m *StateEntry) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: StateEntry: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: StateEntry: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Key", wireType) + } + var byteLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + byteLen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if byteLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + byteLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Key = append(m.Key[:0], dAtA[iNdEx:postIndex]...) + if m.Key == nil { + m.Key = []byte{} + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Value", wireType) + } + var byteLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + byteLen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if byteLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + byteLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Value = append(m.Value[:0], dAtA[iNdEx:postIndex]...) + if m.Value == nil { + m.Value = []byte{} + } + iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Delete", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.Delete = bool(v != 0) + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *StoreStateDiff) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: StoreStateDiff: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: StoreStateDiff: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Entries", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Entries = append(m.Entries, StateEntry{}) + if err := m.Entries[len(m.Entries)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *EthCallRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -5930,6 +6885,40 @@ func (m *EthCallRequest) Unmarshal(dAtA []byte) error { m.Overrides = []byte{} } iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field StateOverrides", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.StateOverrides = append(m.StateOverrides, StoreStateDiff{}) + if err := m.StateOverrides[len(m.StateOverrides)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) diff --git a/x/vm/types/query.pb.gw.go b/x/vm/types/query.pb.gw.go index 4265f3fbc..87d30d725 100644 --- a/x/vm/types/query.pb.gw.go +++ b/x/vm/types/query.pb.gw.go @@ -613,6 +613,60 @@ func local_request_Query_Config_0(ctx context.Context, marshaler runtime.Marshal } +func request_Query_Precompile_0(ctx context.Context, marshaler runtime.Marshaler, client QueryClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq QueryPrecompileRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["address"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "address") + } + + protoReq.Address, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "address", err) + } + + msg, err := client.Precompile(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_Query_Precompile_0(ctx context.Context, marshaler runtime.Marshaler, server QueryServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq QueryPrecompileRequest + var metadata runtime.ServerMetadata + + var ( + val string + ok bool + err error + _ = err + ) + + val, ok = pathParams["address"] + if !ok { + return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "address") + } + + protoReq.Address, err = runtime.String(val) + + if err != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "address", err) + } + + msg, err := server.Precompile(ctx, &protoReq) + return msg, metadata, err + +} + func request_Query_GlobalMinGasPrice_0(ctx context.Context, marshaler runtime.Marshaler, client QueryClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq QueryGlobalMinGasPriceRequest var metadata runtime.ServerMetadata @@ -959,6 +1013,29 @@ func RegisterQueryHandlerServer(ctx context.Context, mux *runtime.ServeMux, serv }) + mux.Handle("GET", pattern_Query_Precompile_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_Query_Precompile_0(rctx, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_Query_Precompile_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + mux.Handle("GET", pattern_Query_GlobalMinGasPrice_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -1303,6 +1380,26 @@ func RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, clie }) + mux.Handle("GET", pattern_Query_Precompile_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_Query_Precompile_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_Query_Precompile_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + mux.Handle("GET", pattern_Query_GlobalMinGasPrice_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -1355,6 +1452,8 @@ var ( pattern_Query_Config_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 4}, []string{"cosmos", "evm", "vm", "v1", "config"}, "", runtime.AssumeColonVerbOpt(false))) + pattern_Query_Precompile_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 4, 1, 0, 4, 1, 5, 5}, []string{"cosmos", "evm", "vm", "v1", "precompile", "address"}, "", runtime.AssumeColonVerbOpt(false))) + pattern_Query_GlobalMinGasPrice_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 4}, []string{"cosmos", "evm", "vm", "v1", "min_gas_price"}, "", runtime.AssumeColonVerbOpt(false))) ) @@ -1387,5 +1486,7 @@ var ( forward_Query_Config_0 = runtime.ForwardResponseMessage + forward_Query_Precompile_0 = runtime.ForwardResponseMessage + forward_Query_GlobalMinGasPrice_0 = runtime.ForwardResponseMessage ) From 7f9ab015f7f0e3337250b6815617c9849a4392da Mon Sep 17 00:00:00 2001 From: mmsqe Date: Mon, 20 Oct 2025 18:23:54 +0800 Subject: [PATCH 2/8] apply --- rpc/backend/call_tx.go | 43 ++++++++++++++++++-------- rpc/types/types.go | 63 +++++++++++++++++++++++++++++++++++++++ x/vm/keeper/grpc_query.go | 36 ++++++++++++++++++++++ x/vm/types/query.go | 29 ++++++++++++++++++ 4 files changed, 158 insertions(+), 13 deletions(-) diff --git a/rpc/backend/call_tx.go b/rpc/backend/call_tx.go index 217830ff8..7335b1f34 100644 --- a/rpc/backend/call_tx.go +++ b/rpc/backend/call_tx.go @@ -372,19 +372,6 @@ func (b *Backend) DoCall( return nil, errors.New("header not found") } - var bzOverrides []byte - if overrides != nil { - bzOverrides = *overrides - } - - req := evmtypes.EthCallRequest{ - Args: bz, - GasCap: b.RPCGasCap(), - ProposerAddress: sdk.ConsAddress(header.Header.ProposerAddress), - ChainId: b.EvmChainID.Int64(), - Overrides: bzOverrides, - } - // From ContextWithHeight: if the provided height is 0, // it will return an empty context and the gRPC query will use // the latest block height for querying. @@ -404,6 +391,36 @@ func (b *Backend) DoCall( // this makes sure resources are cleaned up. defer cancel() + var isDynamic bool + if args.To != nil { + precompileReq := &evmtypes.QueryPrecompileRequest{Address: args.To.Hex()} + if res, err := b.QueryClient.Precompile(ctx, precompileReq); err == nil { + isDynamic = res.IsPrecompile && !res.IsStatic + } + } + + evmOverrides, cosmosOverrides, err := rpctypes.ParseOverrides(overrides, isDynamic) + if err != nil { + return nil, fmt.Errorf("failed to parse overrides: %w", err) + } + + var bzOverrides []byte + if evmOverrides != nil { + bzOverrides, err = json.Marshal(evmOverrides) + if err != nil { + return nil, fmt.Errorf("failed to marshal EVM overrides: %w", err) + } + } + + req := evmtypes.EthCallRequest{ + Args: bz, + GasCap: b.RPCGasCap(), + ProposerAddress: sdk.ConsAddress(header.Header.ProposerAddress), + ChainId: b.EvmChainID.Int64(), + Overrides: bzOverrides, + StateOverrides: cosmosOverrides, + } + res, err := b.QueryClient.EthCall(ctx, &req) if err != nil { return nil, err diff --git a/rpc/types/types.go b/rpc/types/types.go index 471a9f0af..062e26665 100644 --- a/rpc/types/types.go +++ b/rpc/types/types.go @@ -1,6 +1,7 @@ package types import ( + "encoding/base64" "encoding/json" "fmt" "math/big" @@ -189,3 +190,65 @@ type TraceConfig struct { evmtypes.TraceConfig TracerConfig json.RawMessage `json:"tracerConfig"` } + +// ParseOverrides attempts to parse overrides as StateOverride +// If isDynamicPrecompile is true, it will handle aligned cosmos override format for the target dynamic precompile +func ParseOverrides(overrides *json.RawMessage, isDynamicPrecompile bool) (*StateOverride, []evmtypes.StoreStateDiff, error) { + if overrides == nil { + return nil, nil, nil + } + + if isDynamicPrecompile { + var rawOverrides map[string]interface{} + if err := json.Unmarshal(*overrides, &rawOverrides); err == nil { + for _, encodedData := range rawOverrides { + if overrideAccount, ok := encodedData.(map[string]interface{}); ok { + if cosmosOverrides := extractFromOverrideAccount(overrideAccount); cosmosOverrides != nil { + return nil, cosmosOverrides, nil + } + } + if encodedStr, ok := encodedData.(string); ok { + if cosmosOverrides := decodeCosmosOverrides(encodedStr); cosmosOverrides != nil { + return nil, cosmosOverrides, nil + } + } + } + } + } + + var res StateOverride + if err := json.Unmarshal(*overrides, &res); err != nil { + return nil, nil, fmt.Errorf("failed to parse overrides: %w", err) + } + if len(res) == 0 { + return nil, nil, nil + } + return &res, nil, nil +} + +// extractFromOverrideAccount extracts cosmos overrides from state/stateDiff fields +func extractFromOverrideAccount(overrideAccount map[string]interface{}) []evmtypes.StoreStateDiff { + for stateType, stateValue := range overrideAccount { + if (stateType == "state" || stateType == "stateDiff") && stateValue != nil { + if encodedStr, ok := stateValue.(string); ok { + if cosmosOverrides := decodeCosmosOverrides(encodedStr); cosmosOverrides != nil { + return cosmosOverrides + } + } + } + } + return nil +} + +// decodeCosmosOverrides decodes base64 string and unmarshals cosmos overrides +func decodeCosmosOverrides(encodedStr string) []evmtypes.StoreStateDiff { + decodedBytes, err := base64.StdEncoding.DecodeString(encodedStr) + if err != nil { + return nil + } + var cosmosOverrides []evmtypes.StoreStateDiff + if err := json.Unmarshal(decodedBytes, &cosmosOverrides); err != nil { + return nil + } + return cosmosOverrides +} diff --git a/x/vm/keeper/grpc_query.go b/x/vm/keeper/grpc_query.go index 0e69e5ce0..98f7ca5aa 100644 --- a/x/vm/keeper/grpc_query.go +++ b/x/vm/keeper/grpc_query.go @@ -239,6 +239,11 @@ func (k Keeper) EthCall(c context.Context, req *types.EthCallRequest) (*types.Ms } ctx := sdk.UnwrapSDKContext(c) + for _, stateOverride := range req.StateOverrides { + if err := stateOverride.Apply(ctx, k.storeKeys); err != nil { + return nil, status.Error(codes.InvalidArgument, fmt.Sprintf("invalid state override: %s", err.Error())) + } + } var args types.TransactionArgs err := json.Unmarshal(req.Args, &args) @@ -869,6 +874,37 @@ func (k Keeper) GlobalMinGasPrice(c context.Context, _ *types.QueryGlobalMinGasP return &types.QueryGlobalMinGasPriceResponse{MinGasPrice: minGasPrice}, nil } +// Precompile implements the Query/Precompile gRPC method +func (k Keeper) Precompile(c context.Context, req *types.QueryPrecompileRequest) (*types.QueryPrecompileResponse, error) { + if req == nil { + return nil, status.Error(codes.InvalidArgument, "empty request") + } + + if !common.IsHexAddress(req.Address) { + return nil, status.Error(codes.InvalidArgument, "invalid address") + } + + ctx := sdk.UnwrapSDKContext(c) + address := common.HexToAddress(req.Address) + + _, found, err := k.GetPrecompileInstance(ctx, address) + if err != nil { + return nil, status.Error(codes.Internal, err.Error()) + } + + isStatic := false + if found { + params := k.GetParams(ctx) + _, staticFound, _ := k.GetStaticPrecompileInstance(¶ms, address) + isStatic = staticFound + } + + return &types.QueryPrecompileResponse{ + IsPrecompile: found, + IsStatic: isStatic, + }, nil +} + // Config implements the Query/Config gRPC method func (k Keeper) Config(_ context.Context, _ *types.QueryConfigRequest) (*types.QueryConfigResponse, error) { config := types.GetChainConfig() diff --git a/x/vm/types/query.go b/x/vm/types/query.go index e2e78f4cc..649196e75 100644 --- a/x/vm/types/query.go +++ b/x/vm/types/query.go @@ -1,6 +1,35 @@ package types +import ( + "fmt" + + storetypes "cosmossdk.io/store/types" + + sdk "github.com/cosmos/cosmos-sdk/types" +) + // Failed returns if the contract execution failed in vm errors func (egr EstimateGasResponse) Failed() bool { return len(egr.VmError) > 0 } + +// Apply applies the state overrides to the given context's KVStore. +// This allows overriding specific keys in the Cosmos SDK state during EVM calls. +func (s *StoreStateDiff) Apply(ctx sdk.Context, storeKeys map[string]*storetypes.KVStoreKey) error { + if s == nil { + return nil + } + storeKey, exists := storeKeys[s.Name] + if !exists { + return fmt.Errorf("store key %s not found", s.Name) + } + kvStore := ctx.KVStore(storeKey) + for _, entry := range s.Entries { + if entry.Delete { + kvStore.Delete(entry.Key) + } else { + kvStore.Set(entry.Key, entry.Value) + } + } + return nil +} From d89babeec30f4daf7ce75dcb726ca5dd7070fcc1 Mon Sep 17 00:00:00 2001 From: mmsqe Date: Mon, 20 Oct 2025 18:23:57 +0800 Subject: [PATCH 3/8] add test --- rpc/types/types_test.go | 98 +++++++++++++++++++ tests/integration/rpc/backend/test_call_tx.go | 90 +++++++++-------- 2 files changed, 147 insertions(+), 41 deletions(-) diff --git a/rpc/types/types_test.go b/rpc/types/types_test.go index 33360236e..a0e8cb3fb 100644 --- a/rpc/types/types_test.go +++ b/rpc/types/types_test.go @@ -1,12 +1,14 @@ package types_test import ( + "encoding/json" "maps" "testing" "github.com/ethereum/go-ethereum/common" "github.com/ethereum/go-ethereum/common/hexutil" "github.com/ethereum/go-ethereum/core/vm" + "github.com/stretchr/testify/require" rpc "github.com/cosmos/evm/rpc/types" "github.com/cosmos/evm/x/vm/statedb" @@ -110,3 +112,99 @@ func TestApply(t *testing.T) { }) } } + +func TestParseOverrides(t *testing.T) { + tests := []struct { + name string + input string + expectedEVMOverrides bool + expectedCosmosOverrides int + expectError bool + isDynamicPrecompile bool + }{ + { + name: "Standard EVM overrides (backward compatibility)", + input: `{ + "0x1234567890abcdef1234567890abcdef12345678": { + "stateDiff": { + "0x0000000000000000000000000000000000000000000000000000000000000001": "0x0000000000000000000000000000000000000000000000000000000000000064" + } + } + }`, + expectedEVMOverrides: true, + expectedCosmosOverrides: 0, + isDynamicPrecompile: false, + }, + { + name: "Dynamic precompile with aligned cosmos overrides in state field", + input: `{ + "0x1234567890abcdef1234567890abcdef12345678": { + "state": "W3sibmFtZSI6ImJhbmsiLCJlbnRyaWVzIjpbeyJrZXkiOiJZbUZ1YXlCclpYaz0iLCJ2YWx1ZSI6IllXRnVhM0IyWVd4MVpRPT0iLCJkZWxldGUiOmZhbHNlfV19XQ==" + } + }`, + expectedEVMOverrides: false, + expectedCosmosOverrides: 1, + isDynamicPrecompile: true, + }, + { + name: "Dynamic precompile with aligned cosmos overrides in stateDiff field", + input: `{ + "0x1234567890abcdef1234567890abcdef12345678": { + "stateDiff": "W3sibmFtZSI6ImJhbmsiLCJlbnRyaWVzIjpbeyJrZXkiOiJZbUZ1YXlCclpYaz0iLCJ2YWx1ZSI6IllXRnVhM0IyWVd4MVpRPT0iLCJkZWxldGUiOmZhbHNlfV19XQ==" + } + }`, + expectedEVMOverrides: false, + expectedCosmosOverrides: 1, + isDynamicPrecompile: true, + }, + { + name: "Empty overrides", + input: `{}`, + expectedEVMOverrides: false, + expectedCosmosOverrides: 0, + isDynamicPrecompile: false, + }, + { + name: "Invalid JSON", + input: `{invalid json}`, + expectError: true, + isDynamicPrecompile: false, + }, + { + name: "Nil input", + input: "", + expectedEVMOverrides: false, + expectedCosmosOverrides: 0, + expectError: false, + isDynamicPrecompile: false, + }, + } + + for _, tc := range tests { + t.Run(tc.name, func(t *testing.T) { + var rawMessage *json.RawMessage + if tc.input != "" { + msg := json.RawMessage(tc.input) + rawMessage = &msg + } + evmOverrides, cosmosOverrides, err := rpc.ParseOverrides(rawMessage, tc.isDynamicPrecompile) + if tc.expectError { + require.Error(t, err) + return + } + require.NoError(t, err) + if tc.expectedEVMOverrides { + require.NotNil(t, evmOverrides) + require.Len(t, *evmOverrides, 1) + } else { + require.Nil(t, evmOverrides) + } + if tc.expectedCosmosOverrides > 0 { + require.NotNil(t, cosmosOverrides) + require.Len(t, cosmosOverrides, tc.expectedCosmosOverrides) + } else { + require.Nil(t, cosmosOverrides) + } + }) + } +} diff --git a/tests/integration/rpc/backend/test_call_tx.go b/tests/integration/rpc/backend/test_call_tx.go index d52cb4120..6b0aed53f 100644 --- a/tests/integration/rpc/backend/test_call_tx.go +++ b/tests/integration/rpc/backend/test_call_tx.go @@ -414,6 +414,22 @@ func (s *TestSuite) TestSendRawTransaction() { } } +func (s *TestSuite) registerMock(bz []byte, expectedRequest *evmtypes.EthCallRequest, shouldError bool) func() { + return func() { + client := s.backend.ClientCtx.Client.(*mocks.Client) + QueryClient := s.backend.QueryClient.QueryClient.(*mocks.EVMQueryClient) + height := int64(1) + RegisterHeader(client, &height, bz) + // Register precompile for any address that might be called + RegisterPrecompile(QueryClient, "") + if shouldError { + RegisterEthCallError(QueryClient, expectedRequest) + } else { + RegisterEthCall(QueryClient, expectedRequest) + } + } +} + func (s *TestSuite) TestDoCall() { _, bz := s.buildEthereumTx() gasPrice := (*hexutil.Big)(big.NewInt(1)) @@ -432,10 +448,12 @@ func (s *TestSuite) TestDoCall() { AccessList: nil, ChainID: evmChainID, } + + var err error argsBz, err := json.Marshal(callArgs) s.Require().NoError(err) - overrides := json.RawMessage(`{ + evmOverrides := json.RawMessage(`{ "` + toAddr.Hex() + `": { "balance": "0x1000000000000000000", "nonce": "0x1", @@ -445,8 +463,17 @@ func (s *TestSuite) TestDoCall() { } } }`) + evmOverridesParsed, _, err := rpctypes.ParseOverrides(&evmOverrides, false) + s.Require().NoError(err) + var bzOverrides []byte + if evmOverridesParsed != nil { + bzOverrides, err = json.Marshal(evmOverridesParsed) + s.Require().NoError(err) + } + invalidOverrides := json.RawMessage(`{"invalid": json}`) emptyOverrides := json.RawMessage(`{}`) + baseRequest := &evmtypes.EthCallRequest{Args: argsBz, ChainId: s.backend.EvmChainID.Int64()} testCases := []struct { name string registerMock func() @@ -458,13 +485,7 @@ func (s *TestSuite) TestDoCall() { }{ { "fail - Invalid request", - func() { - client := s.backend.ClientCtx.Client.(*mocks.Client) - QueryClient := s.backend.QueryClient.QueryClient.(*mocks.EVMQueryClient) - height := int64(1) - RegisterHeader(client, &height, bz) - RegisterEthCallError(QueryClient, &evmtypes.EthCallRequest{Args: argsBz, ChainId: s.backend.EvmChainID.Int64()}) - }, + s.registerMock(bz, baseRequest, true), rpctypes.BlockNumber(1), callArgs, nil, @@ -473,13 +494,7 @@ func (s *TestSuite) TestDoCall() { }, { "pass - Returned transaction response", - func() { - client := s.backend.ClientCtx.Client.(*mocks.Client) - QueryClient := s.backend.QueryClient.QueryClient.(*mocks.EVMQueryClient) - height := int64(1) - RegisterHeader(client, &height, bz) - RegisterEthCall(QueryClient, &evmtypes.EthCallRequest{Args: argsBz, ChainId: s.backend.EvmChainID.Int64()}) - }, + s.registerMock(bz, baseRequest, false), rpctypes.BlockNumber(1), callArgs, nil, @@ -487,22 +502,21 @@ func (s *TestSuite) TestDoCall() { true, }, { - "pass - With state overrides", + "pass - With EVM state overrides", func() { - client := s.backend.ClientCtx.Client.(*mocks.Client) - QueryClient := s.backend.QueryClient.QueryClient.(*mocks.EVMQueryClient) - height := int64(1) - RegisterHeader(client, &height, bz) - expected := &evmtypes.EthCallRequest{ - Args: argsBz, - ChainId: s.backend.EvmChainID.Int64(), - Overrides: overrides, + _, expectedCosmosOverrides, err := rpctypes.ParseOverrides(&evmOverrides, false) + s.Require().NoError(err) + expectedRequest := &evmtypes.EthCallRequest{ + Args: argsBz, + ChainId: s.backend.EvmChainID.Int64(), + Overrides: bzOverrides, + StateOverrides: expectedCosmosOverrides, } - RegisterEthCall(QueryClient, expected) + s.registerMock(bz, expectedRequest, false)() }, rpctypes.BlockNumber(1), callArgs, - &overrides, + &evmOverrides, &evmtypes.MsgEthereumTxResponse{}, true, }, @@ -513,12 +527,7 @@ func (s *TestSuite) TestDoCall() { QueryClient := s.backend.QueryClient.QueryClient.(*mocks.EVMQueryClient) height := int64(1) RegisterHeader(client, &height, bz) - expected := &evmtypes.EthCallRequest{ - Args: argsBz, - ChainId: s.backend.EvmChainID.Int64(), - Overrides: invalidOverrides, - } - RegisterEthCallError(QueryClient, expected) + RegisterPrecompile(QueryClient, "") }, rpctypes.BlockNumber(1), callArgs, @@ -529,16 +538,15 @@ func (s *TestSuite) TestDoCall() { { "pass - Empty state overrides", func() { - client := s.backend.ClientCtx.Client.(*mocks.Client) - QueryClient := s.backend.QueryClient.QueryClient.(*mocks.EVMQueryClient) - height := int64(1) - RegisterHeader(client, &height, bz) - expected := &evmtypes.EthCallRequest{ - Args: argsBz, - ChainId: s.backend.EvmChainID.Int64(), - Overrides: emptyOverrides, + _, expectedCosmosOverrides, err := rpctypes.ParseOverrides(&emptyOverrides, false) + s.Require().NoError(err) + expectedRequest := &evmtypes.EthCallRequest{ + Args: argsBz, + ChainId: s.backend.EvmChainID.Int64(), + Overrides: nil, + StateOverrides: expectedCosmosOverrides, } - RegisterEthCall(QueryClient, expected) + s.registerMock(bz, expectedRequest, false)() }, rpctypes.BlockNumber(1), callArgs, From 9402f1a3a7655eb659f474fa9164140d2cf6e3c6 Mon Sep 17 00:00:00 2001 From: mmsqe Date: Mon, 20 Oct 2025 18:26:14 +0800 Subject: [PATCH 4/8] cleanup --- rpc/types/types.go | 5 ----- 1 file changed, 5 deletions(-) diff --git a/rpc/types/types.go b/rpc/types/types.go index 062e26665..7d300447b 100644 --- a/rpc/types/types.go +++ b/rpc/types/types.go @@ -207,11 +207,6 @@ func ParseOverrides(overrides *json.RawMessage, isDynamicPrecompile bool) (*Stat return nil, cosmosOverrides, nil } } - if encodedStr, ok := encodedData.(string); ok { - if cosmosOverrides := decodeCosmosOverrides(encodedStr); cosmosOverrides != nil { - return nil, cosmosOverrides, nil - } - } } } } From e9dead4cf1e847bc82a5dfdddbf497ed1fbfe894 Mon Sep 17 00:00:00 2001 From: mmsqe Date: Mon, 20 Oct 2025 21:15:08 +0800 Subject: [PATCH 5/8] handle both --- api/cosmos/evm/vm/v1/query.pulsar.go | 789 ++++++++++++--------------- proto/cosmos/evm/vm/v1/query.proto | 2 - rpc/backend/call_tx.go | 6 +- rpc/types/types.go | 6 +- x/vm/keeper/grpc_query.go | 8 - x/vm/types/query.pb.go | 281 ++++------ 6 files changed, 487 insertions(+), 605 deletions(-) diff --git a/api/cosmos/evm/vm/v1/query.pulsar.go b/api/cosmos/evm/vm/v1/query.pulsar.go index 7ab45a661..0cec84c49 100644 --- a/api/cosmos/evm/vm/v1/query.pulsar.go +++ b/api/cosmos/evm/vm/v1/query.pulsar.go @@ -1231,14 +1231,12 @@ func (x *fastReflection_QueryPrecompileRequest) ProtoMethods() *protoiface.Metho var ( md_QueryPrecompileResponse protoreflect.MessageDescriptor fd_QueryPrecompileResponse_is_precompile protoreflect.FieldDescriptor - fd_QueryPrecompileResponse_is_static protoreflect.FieldDescriptor ) func init() { file_cosmos_evm_vm_v1_query_proto_init() md_QueryPrecompileResponse = File_cosmos_evm_vm_v1_query_proto.Messages().ByName("QueryPrecompileResponse") fd_QueryPrecompileResponse_is_precompile = md_QueryPrecompileResponse.Fields().ByName("is_precompile") - fd_QueryPrecompileResponse_is_static = md_QueryPrecompileResponse.Fields().ByName("is_static") } var _ protoreflect.Message = (*fastReflection_QueryPrecompileResponse)(nil) @@ -1312,12 +1310,6 @@ func (x *fastReflection_QueryPrecompileResponse) Range(f func(protoreflect.Field return } } - if x.IsStatic != false { - value := protoreflect.ValueOfBool(x.IsStatic) - if !f(fd_QueryPrecompileResponse_is_static, value) { - return - } - } } // Has reports whether a field is populated. @@ -1335,8 +1327,6 @@ func (x *fastReflection_QueryPrecompileResponse) Has(fd protoreflect.FieldDescri switch fd.FullName() { case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_precompile": return x.IsPrecompile != false - case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_static": - return x.IsStatic != false default: if fd.IsExtension() { panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryPrecompileResponse")) @@ -1355,8 +1345,6 @@ func (x *fastReflection_QueryPrecompileResponse) Clear(fd protoreflect.FieldDesc switch fd.FullName() { case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_precompile": x.IsPrecompile = false - case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_static": - x.IsStatic = false default: if fd.IsExtension() { panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryPrecompileResponse")) @@ -1376,9 +1364,6 @@ func (x *fastReflection_QueryPrecompileResponse) Get(descriptor protoreflect.Fie case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_precompile": value := x.IsPrecompile return protoreflect.ValueOfBool(value) - case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_static": - value := x.IsStatic - return protoreflect.ValueOfBool(value) default: if descriptor.IsExtension() { panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryPrecompileResponse")) @@ -1401,8 +1386,6 @@ func (x *fastReflection_QueryPrecompileResponse) Set(fd protoreflect.FieldDescri switch fd.FullName() { case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_precompile": x.IsPrecompile = value.Bool() - case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_static": - x.IsStatic = value.Bool() default: if fd.IsExtension() { panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryPrecompileResponse")) @@ -1425,8 +1408,6 @@ func (x *fastReflection_QueryPrecompileResponse) Mutable(fd protoreflect.FieldDe switch fd.FullName() { case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_precompile": panic(fmt.Errorf("field is_precompile of message cosmos.evm.vm.v1.QueryPrecompileResponse is not mutable")) - case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_static": - panic(fmt.Errorf("field is_static of message cosmos.evm.vm.v1.QueryPrecompileResponse is not mutable")) default: if fd.IsExtension() { panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryPrecompileResponse")) @@ -1442,8 +1423,6 @@ func (x *fastReflection_QueryPrecompileResponse) NewField(fd protoreflect.FieldD switch fd.FullName() { case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_precompile": return protoreflect.ValueOfBool(false) - case "cosmos.evm.vm.v1.QueryPrecompileResponse.is_static": - return protoreflect.ValueOfBool(false) default: if fd.IsExtension() { panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.evm.vm.v1.QueryPrecompileResponse")) @@ -1516,9 +1495,6 @@ func (x *fastReflection_QueryPrecompileResponse) ProtoMethods() *protoiface.Meth if x.IsPrecompile { n += 2 } - if x.IsStatic { - n += 2 - } if x.unknownFields != nil { n += len(x.unknownFields) } @@ -1548,16 +1524,6 @@ func (x *fastReflection_QueryPrecompileResponse) ProtoMethods() *protoiface.Meth i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } - if x.IsStatic { - i-- - if x.IsStatic { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x10 - } if x.IsPrecompile { i-- if x.IsPrecompile { @@ -1637,26 +1603,6 @@ func (x *fastReflection_QueryPrecompileResponse) ProtoMethods() *protoiface.Meth } } x.IsPrecompile = bool(v != 0) - case 2: - if wireType != 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field IsStatic", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow - } - if iNdEx >= l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - x.IsStatic = bool(v != 0) default: iNdEx = preIndex skippy, err := runtime.Skip(dAtA[iNdEx:]) @@ -17112,8 +17058,6 @@ type QueryPrecompileResponse struct { // is_precompile indicates if the address is a precompile contract IsPrecompile bool `protobuf:"varint,1,opt,name=is_precompile,json=isPrecompile,proto3" json:"is_precompile,omitempty"` - // is_static indicates if it's a static precompile (true) or dynamic precompile (false) - IsStatic bool `protobuf:"varint,2,opt,name=is_static,json=isStatic,proto3" json:"is_static,omitempty"` } func (x *QueryPrecompileResponse) Reset() { @@ -17143,13 +17087,6 @@ func (x *QueryPrecompileResponse) GetIsPrecompile() bool { return false } -func (x *QueryPrecompileResponse) GetIsStatic() bool { - if x != nil { - return x.IsStatic - } - return false -} - // QueryAccountRequest is the request type for the Query/Account RPC method. type QueryAccountRequest struct { state protoimpl.MessageState @@ -18632,386 +18569,384 @@ var file_cosmos_evm_vm_v1_query_proto_rawDesc = []byte{ 0x32, 0x0a, 0x16, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x70, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x22, 0x5b, 0x0a, 0x17, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x72, 0x65, 0x63, + 0x65, 0x73, 0x73, 0x22, 0x3e, 0x0a, 0x17, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x70, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x73, 0x5f, 0x70, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x70, 0x69, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x50, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x70, - 0x69, 0x6c, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x69, 0x63, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, - 0x22, 0x39, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x3a, 0x08, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x63, 0x0a, 0x14, 0x51, - 0x75, 0x65, 0x72, 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1b, 0x0a, - 0x09, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x63, 0x6f, 0x64, 0x65, 0x48, 0x61, 0x73, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, - 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, - 0x22, 0x3f, 0x0a, 0x19, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, - 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x08, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, - 0x00, 0x22, 0x86, 0x01, 0x0a, 0x1a, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x73, 0x6d, 0x6f, - 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, - 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, - 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, - 0x6e, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6e, - 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x4b, 0x0a, 0x1c, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, - 0x6e, 0x73, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x08, 0x88, - 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x8b, 0x01, 0x0a, 0x1d, 0x51, 0x75, 0x65, 0x72, - 0x79, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x25, - 0x0a, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, - 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x39, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, - 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, + 0x69, 0x6c, 0x65, 0x22, 0x39, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x3a, 0x08, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x63, + 0x0a, 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, + 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x64, 0x65, 0x48, 0x61, 0x73, 0x68, 0x12, 0x14, 0x0a, + 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, + 0x6e, 0x63, 0x65, 0x22, 0x3f, 0x0a, 0x19, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x73, 0x6d, + 0x6f, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x08, 0x88, 0xa0, 0x1f, 0x00, + 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x86, 0x01, 0x0a, 0x1a, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, + 0x73, 0x6d, 0x6f, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5f, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x4b, 0x0a, + 0x1c, 0x51, 0x75, 0x65, 0x72, 0x79, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, + 0x0c, 0x63, 0x6f, 0x6e, 0x73, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x3a, 0x08, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x8b, 0x01, 0x0a, 0x1d, 0x51, + 0x75, 0x65, 0x72, 0x79, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x0f, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, + 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6e, 0x75, 0x6d, + 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x39, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x08, 0x88, 0xa0, 0x1f, 0x00, 0xe8, + 0xa0, 0x1f, 0x00, 0x22, 0x30, 0x0a, 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x6c, 0x61, + 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x62, + 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x61, + 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x22, 0x4b, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x74, + 0x6f, 0x72, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x08, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, - 0x22, 0x30, 0x0a, 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x61, 0x6c, 0x61, - 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, - 0x63, 0x65, 0x22, 0x4b, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x74, 0x6f, 0x72, 0x61, - 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x03, 0x6b, 0x65, 0x79, 0x3a, 0x08, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x22, - 0x2c, 0x0a, 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x36, 0x0a, - 0x10, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x08, 0x88, 0xa0, 0x1f, - 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x27, 0x0a, 0x11, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, - 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, - 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x22, 0x7a, - 0x0a, 0x12, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x78, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x46, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, - 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x3a, 0x08, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x89, 0x01, 0x0a, 0x13, 0x51, - 0x75, 0x65, 0x72, 0x79, 0x54, 0x78, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x29, 0x0a, 0x04, 0x6c, 0x6f, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x15, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, - 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x52, 0x04, 0x6c, 0x6f, 0x67, 0x73, 0x12, 0x47, 0x0a, - 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, - 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, - 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x14, 0x0a, 0x12, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x52, 0x0a, 0x13, - 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, - 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42, 0x09, 0xc8, - 0xde, 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x22, 0x4c, 0x0a, 0x0a, 0x53, 0x74, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, - 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x6b, 0x65, 0x79, - 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x22, 0x62, - 0x0a, 0x0e, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x44, 0x69, 0x66, 0x66, - 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3c, 0x0a, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, - 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x45, 0x6e, - 0x74, 0x72, 0x79, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, - 0x65, 0x73, 0x22, 0xa6, 0x02, 0x0a, 0x0e, 0x45, 0x74, 0x68, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0c, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x67, 0x61, 0x73, - 0x5f, 0x63, 0x61, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x67, 0x61, 0x73, 0x43, - 0x61, 0x70, 0x12, 0x5d, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x5f, 0x61, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x32, 0xfa, 0xde, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x3a, 0x08, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, + 0x1f, 0x00, 0x22, 0x2c, 0x0a, 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x74, 0x6f, 0x72, 0x61, + 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x22, 0x36, 0x0a, 0x10, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x08, + 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x27, 0x0a, 0x11, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, + 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x63, 0x6f, 0x64, + 0x65, 0x22, 0x7a, 0x0a, 0x12, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x78, 0x4c, 0x6f, 0x67, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x46, 0x0a, 0x0a, 0x70, + 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x67, 0x65, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x3a, 0x08, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x89, 0x01, + 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x78, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x04, 0x6c, 0x6f, 0x67, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, + 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x52, 0x04, 0x6c, 0x6f, 0x67, 0x73, + 0x12, 0x47, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, + 0x73, 0x65, 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0a, 0x70, + 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x14, 0x0a, 0x12, 0x51, 0x75, 0x65, + 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, + 0x52, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, + 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, + 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x06, 0x70, 0x61, 0x72, + 0x61, 0x6d, 0x73, 0x22, 0x4c, 0x0a, 0x0a, 0x53, 0x74, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, + 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x64, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x22, 0x62, 0x0a, 0x0e, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x44, + 0x69, 0x66, 0x66, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3c, 0x0a, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, + 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, + 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, + 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x07, 0x65, 0x6e, + 0x74, 0x72, 0x69, 0x65, 0x73, 0x22, 0xa6, 0x02, 0x0a, 0x0e, 0x45, 0x74, 0x68, 0x43, 0x61, 0x6c, + 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x17, 0x0a, 0x07, + 0x67, 0x61, 0x73, 0x5f, 0x63, 0x61, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x67, + 0x61, 0x73, 0x43, 0x61, 0x70, 0x12, 0x5d, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, + 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x42, + 0x32, 0xfa, 0xde, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, + 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, 0x64, + 0x6b, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x41, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x41, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, + 0x1c, 0x0a, 0x09, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0c, 0x52, 0x09, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x12, 0x4f, 0x0a, + 0x0f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, + 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, + 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x53, + 0x74, 0x61, 0x74, 0x65, 0x44, 0x69, 0x66, 0x66, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x0e, + 0x73, 0x74, 0x61, 0x74, 0x65, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x22, 0x54, + 0x0a, 0x13, 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x47, 0x61, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x03, 0x67, 0x61, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x72, 0x65, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x76, 0x6d, 0x5f, + 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x6d, 0x45, + 0x72, 0x72, 0x6f, 0x72, 0x22, 0x89, 0x04, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, + 0x61, 0x63, 0x65, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x03, + 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x6f, 0x73, 0x6d, + 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, + 0x45, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x54, 0x78, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, + 0x40, 0x0a, 0x0c, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, + 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b, 0x74, 0x72, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x12, 0x43, 0x0a, 0x0c, 0x70, 0x72, 0x65, 0x64, 0x65, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, + 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, + 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x45, 0x74, + 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x54, 0x78, 0x52, 0x0c, 0x70, 0x72, 0x65, 0x64, 0x65, 0x63, + 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, + 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x62, 0x6c, + 0x6f, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, + 0x63, 0x6b, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, + 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, 0x12, 0x48, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, + 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, + 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x0d, 0xc8, 0xde, 0x1f, 0x00, 0x90, 0xdf, + 0x1f, 0x01, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x5d, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x5f, 0x61, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x32, 0xfa, 0xde, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, - 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, - 0x09, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x12, 0x4f, 0x0a, 0x0f, 0x73, 0x74, - 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x18, 0x06, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, - 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x65, 0x44, 0x69, 0x66, 0x66, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x0e, 0x73, 0x74, 0x61, - 0x74, 0x65, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x22, 0x54, 0x0a, 0x13, 0x45, - 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x47, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x03, 0x67, 0x61, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0c, 0x52, 0x03, 0x72, 0x65, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x76, 0x6d, 0x5f, 0x65, 0x72, 0x72, - 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x6d, 0x45, 0x72, 0x72, 0x6f, - 0x72, 0x22, 0x89, 0x04, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, - 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x03, 0x6d, 0x73, 0x67, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, - 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x45, 0x74, 0x68, - 0x65, 0x72, 0x65, 0x75, 0x6d, 0x54, 0x78, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x40, 0x0a, 0x0c, - 0x74, 0x72, 0x61, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, - 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x52, 0x0b, 0x74, 0x72, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x43, - 0x0a, 0x0c, 0x70, 0x72, 0x65, 0x64, 0x65, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x18, 0x04, + 0x73, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x67, 0x61, 0x73, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4d, 0x61, 0x78, 0x47, 0x61, 0x73, + 0x4a, 0x04, 0x08, 0x02, 0x10, 0x03, 0x52, 0x08, 0x74, 0x78, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, + 0x22, 0x2a, 0x0a, 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x54, 0x78, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xb7, 0x03, 0x0a, + 0x16, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x03, 0x74, 0x78, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x45, 0x74, 0x68, 0x65, 0x72, - 0x65, 0x75, 0x6d, 0x54, 0x78, 0x52, 0x0c, 0x70, 0x72, 0x65, 0x64, 0x65, 0x63, 0x65, 0x73, 0x73, - 0x6f, 0x72, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, - 0x62, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, - 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, - 0x68, 0x61, 0x73, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, - 0x6b, 0x48, 0x61, 0x73, 0x68, 0x12, 0x48, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x74, - 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x0d, 0xc8, 0xde, 0x1f, 0x00, 0x90, 0xdf, 0x1f, 0x01, 0xa8, - 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, - 0x5d, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x32, 0xfa, 0xde, 0x1f, 0x2e, 0x67, - 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, - 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x74, 0x79, 0x70, 0x65, - 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x0f, 0x70, - 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x19, - 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x62, 0x6c, 0x6f, - 0x63, 0x6b, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x67, 0x61, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4d, 0x61, 0x78, 0x47, 0x61, 0x73, 0x4a, 0x04, 0x08, - 0x02, 0x10, 0x03, 0x52, 0x08, 0x74, 0x78, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x2a, 0x0a, - 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x54, 0x78, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xb7, 0x03, 0x0a, 0x16, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x03, 0x74, 0x78, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, - 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x45, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, - 0x54, 0x78, 0x52, 0x03, 0x74, 0x78, 0x73, 0x12, 0x40, 0x0a, 0x0c, 0x74, 0x72, 0x61, 0x63, 0x65, - 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, - 0x2e, 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b, 0x74, 0x72, - 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, - 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, - 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, 0x12, 0x48, 0x0a, 0x0a, 0x62, - 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x0d, 0xc8, 0xde, 0x1f, - 0x00, 0x90, 0xdf, 0x1f, 0x01, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, - 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x5d, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, - 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x42, - 0x32, 0xfa, 0xde, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, 0x64, - 0x6b, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x41, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x41, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, - 0x22, 0x0a, 0x0d, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x67, 0x61, 0x73, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4d, 0x61, 0x78, - 0x47, 0x61, 0x73, 0x22, 0x2d, 0x0a, 0x17, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, - 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, - 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, - 0x74, 0x61, 0x22, 0x87, 0x03, 0x0a, 0x15, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, - 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, - 0x61, 0x72, 0x67, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, - 0x12, 0x17, 0x0a, 0x07, 0x67, 0x61, 0x73, 0x5f, 0x63, 0x61, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x06, 0x67, 0x61, 0x73, 0x43, 0x61, 0x70, 0x12, 0x5d, 0x0a, 0x10, 0x70, 0x72, 0x6f, - 0x70, 0x6f, 0x73, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0c, 0x42, 0x32, 0xfa, 0xde, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, - 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, - 0x73, 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x73, - 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, - 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x40, 0x0a, 0x0c, 0x74, 0x72, 0x61, 0x63, - 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, + 0x65, 0x75, 0x6d, 0x54, 0x78, 0x52, 0x03, 0x74, 0x78, 0x73, 0x12, 0x40, 0x0a, 0x0c, 0x74, 0x72, + 0x61, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, + 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, + 0x0b, 0x74, 0x72, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x21, 0x0a, 0x0c, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, + 0x1d, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, 0x12, 0x48, + 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x0d, + 0xc8, 0xde, 0x1f, 0x00, 0x90, 0xdf, 0x1f, 0x01, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x09, 0x62, + 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x5d, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x70, + 0x6f, 0x73, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x0c, 0x42, 0x32, 0xfa, 0xde, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, + 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, + 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x41, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, + 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, + 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, + 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6d, 0x61, 0x78, 0x5f, + 0x67, 0x61, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x4d, 0x61, 0x78, 0x47, 0x61, 0x73, 0x22, 0x2d, 0x0a, 0x17, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, + 0x72, 0x61, 0x63, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x87, 0x03, 0x0a, 0x15, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, + 0x72, 0x61, 0x63, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x12, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x61, + 0x72, 0x67, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x67, 0x61, 0x73, 0x5f, 0x63, 0x61, 0x70, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x67, 0x61, 0x73, 0x43, 0x61, 0x70, 0x12, 0x5d, 0x0a, 0x10, + 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x32, 0xfa, 0xde, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x68, + 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x63, 0x6f, + 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x43, + 0x6f, 0x6e, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x70, + 0x6f, 0x73, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x40, 0x0a, 0x0c, 0x74, + 0x72, 0x61, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, + 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x52, 0x0b, 0x74, 0x72, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x21, 0x0a, + 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, 0x12, + 0x43, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, + 0x08, 0xc8, 0xde, 0x1f, 0x00, 0x90, 0xdf, 0x1f, 0x01, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x54, 0x69, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x22, + 0x2c, 0x0a, 0x16, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x61, 0x6c, + 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, + 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x15, 0x0a, + 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x22, 0x4c, 0x0a, 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x73, + 0x65, 0x46, 0x65, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x08, + 0x62, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x19, + 0xda, 0xde, 0x1f, 0x15, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, + 0x2f, 0x6d, 0x61, 0x74, 0x68, 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x46, + 0x65, 0x65, 0x22, 0x1f, 0x0a, 0x1d, 0x51, 0x75, 0x65, 0x72, 0x79, 0x47, 0x6c, 0x6f, 0x62, 0x61, + 0x6c, 0x4d, 0x69, 0x6e, 0x47, 0x61, 0x73, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x22, 0x63, 0x0a, 0x1e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x47, 0x6c, 0x6f, 0x62, + 0x61, 0x6c, 0x4d, 0x69, 0x6e, 0x47, 0x61, 0x73, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x0d, 0x6d, 0x69, 0x6e, 0x5f, 0x67, 0x61, 0x73, + 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1d, 0xc8, 0xde, + 0x1f, 0x00, 0xda, 0xde, 0x1f, 0x15, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, + 0x69, 0x6f, 0x2f, 0x6d, 0x61, 0x74, 0x68, 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x0b, 0x6d, 0x69, 0x6e, + 0x47, 0x61, 0x73, 0x50, 0x72, 0x69, 0x63, 0x65, 0x32, 0xa5, 0x11, 0x0a, 0x05, 0x51, 0x75, 0x65, + 0x72, 0x79, 0x12, 0x85, 0x01, 0x0a, 0x07, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, - 0x31, 0x2e, 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b, 0x74, - 0x72, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, - 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1d, 0x0a, - 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, 0x12, 0x43, 0x0a, 0x0a, - 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x08, 0xc8, 0xde, - 0x1f, 0x00, 0x90, 0xdf, 0x1f, 0x01, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, - 0x65, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x22, 0x2c, 0x0a, 0x16, - 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x15, 0x0a, 0x13, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x42, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x22, 0x4c, 0x0a, 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x73, 0x65, 0x46, 0x65, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x08, 0x62, 0x61, 0x73, - 0x65, 0x5f, 0x66, 0x65, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x19, 0xda, 0xde, 0x1f, - 0x15, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x6d, 0x61, - 0x74, 0x68, 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x22, - 0x1f, 0x0a, 0x1d, 0x51, 0x75, 0x65, 0x72, 0x79, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4d, 0x69, - 0x6e, 0x47, 0x61, 0x73, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x22, 0x63, 0x0a, 0x1e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4d, - 0x69, 0x6e, 0x47, 0x61, 0x73, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x41, 0x0a, 0x0d, 0x6d, 0x69, 0x6e, 0x5f, 0x67, 0x61, 0x73, 0x5f, 0x70, 0x72, - 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1d, 0xc8, 0xde, 0x1f, 0x00, 0xda, - 0xde, 0x1f, 0x15, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, - 0x6d, 0x61, 0x74, 0x68, 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x47, 0x61, 0x73, - 0x50, 0x72, 0x69, 0x63, 0x65, 0x32, 0xa5, 0x11, 0x0a, 0x05, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, - 0x85, 0x01, 0x0a, 0x07, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x25, 0x2e, 0x63, 0x6f, - 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, - 0x75, 0x65, 0x72, 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, - 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2b, 0x82, 0xd3, 0xe4, 0x93, - 0x02, 0x25, 0x12, 0x23, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, - 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2f, 0x7b, 0x61, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x7d, 0x12, 0x9e, 0x01, 0x0a, 0x0d, 0x43, 0x6f, 0x73, 0x6d, - 0x6f, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2b, 0x2e, 0x63, 0x6f, 0x73, 0x6d, + 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, + 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2b, 0x82, + 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x12, 0x23, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, + 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x2f, 0x7b, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x7d, 0x12, 0x9e, 0x01, 0x0a, 0x0d, 0x43, + 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2b, 0x2e, 0x63, + 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, + 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, - 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x32, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2c, 0x12, 0x2a, 0x2f, 0x63, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2f, 0x7b, - 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x7d, 0x12, 0xaf, 0x01, 0x0a, 0x10, 0x56, 0x61, 0x6c, - 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2e, 0x2e, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, - 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, - 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3a, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x34, 0x12, 0x32, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, - 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, - 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, - 0x73, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x7d, 0x12, 0x86, 0x01, 0x0a, 0x07, 0x42, - 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, - 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, - 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, - 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x26, 0x12, 0x24, 0x2f, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, - 0x2f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x61, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x7d, 0x12, 0x8b, 0x01, 0x0a, 0x07, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x12, - 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, - 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, - 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, - 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x31, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2b, 0x12, 0x29, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, - 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x2f, 0x7b, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x7d, 0x2f, 0x7b, 0x6b, 0x65, 0x79, - 0x7d, 0x12, 0x7a, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x22, 0x2e, 0x63, 0x6f, 0x73, 0x6d, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x32, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2c, 0x12, + 0x2a, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, + 0x76, 0x31, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x2f, 0x7b, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x7d, 0x12, 0xaf, 0x01, 0x0a, 0x10, + 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x2e, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, + 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x6f, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x2f, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, + 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x6f, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x3a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x34, 0x12, 0x32, 0x2f, 0x63, 0x6f, 0x73, 0x6d, + 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2f, 0x7b, + 0x63, 0x6f, 0x6e, 0x73, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x7d, 0x12, 0x86, 0x01, + 0x0a, 0x07, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, - 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0x29, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x23, 0x12, 0x21, 0x2f, 0x63, 0x6f, 0x73, - 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6f, - 0x64, 0x65, 0x73, 0x2f, 0x7b, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x7d, 0x12, 0x77, 0x0a, - 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x24, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, - 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, - 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, - 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x20, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1a, 0x12, 0x18, 0x2f, 0x63, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, - 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x78, 0x0a, 0x07, 0x45, 0x74, 0x68, 0x43, 0x61, 0x6c, - 0x6c, 0x12, 0x20, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, - 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x74, 0x68, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, - 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x45, 0x74, 0x68, 0x65, 0x72, 0x65, - 0x75, 0x6d, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x22, 0x82, 0xd3, - 0xe4, 0x93, 0x02, 0x1c, 0x12, 0x1a, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, - 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x74, 0x68, 0x5f, 0x63, 0x61, 0x6c, 0x6c, - 0x12, 0x7e, 0x0a, 0x0b, 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x47, 0x61, 0x73, 0x12, - 0x20, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, - 0x76, 0x31, 0x2e, 0x45, 0x74, 0x68, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, - 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x47, 0x61, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x26, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x20, - 0x12, 0x1e, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, - 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x67, 0x61, 0x73, - 0x12, 0x7c, 0x0a, 0x07, 0x54, 0x72, 0x61, 0x63, 0x65, 0x54, 0x78, 0x12, 0x25, 0x2e, 0x63, 0x6f, - 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, - 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, - 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, - 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x22, 0x82, 0xd3, 0xe4, 0x93, - 0x02, 0x1c, 0x12, 0x1a, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, - 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5f, 0x74, 0x78, 0x12, 0x88, - 0x01, 0x0a, 0x0a, 0x54, 0x72, 0x61, 0x63, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x28, 0x2e, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, - 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, - 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, - 0x54, 0x72, 0x61, 0x63, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0x25, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x12, 0x1d, 0x2f, 0x63, 0x6f, 0x73, - 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x72, - 0x61, 0x63, 0x65, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x84, 0x01, 0x0a, 0x09, 0x54, 0x72, - 0x61, 0x63, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x12, 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, - 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, - 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x28, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, - 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x61, - 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x24, 0x82, 0xd3, 0xe4, 0x93, - 0x02, 0x1e, 0x12, 0x1c, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, - 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x6c, - 0x12, 0x7c, 0x0a, 0x07, 0x42, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x12, 0x25, 0x2e, 0x63, 0x6f, - 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, - 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, - 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x73, 0x65, 0x46, - 0x65, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x22, 0x82, 0xd3, 0xe4, 0x93, - 0x02, 0x1c, 0x12, 0x1a, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, - 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x12, 0x77, - 0x0a, 0x06, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x24, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, - 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, - 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, + 0x72, 0x79, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, + 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x26, + 0x12, 0x24, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, + 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x7d, 0x12, 0x8b, 0x01, 0x0a, 0x07, 0x53, 0x74, 0x6f, 0x72, 0x61, + 0x67, 0x65, 0x12, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, + 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x74, 0x6f, 0x72, 0x61, + 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, + 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, + 0x72, 0x79, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x31, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2b, 0x12, 0x29, 0x2f, 0x63, 0x6f, 0x73, 0x6d, + 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x74, 0x6f, + 0x72, 0x61, 0x67, 0x65, 0x2f, 0x7b, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x7d, 0x2f, 0x7b, + 0x6b, 0x65, 0x79, 0x7d, 0x12, 0x7a, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x22, 0x2e, 0x63, + 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, + 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x23, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, + 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x29, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x23, 0x12, 0x21, 0x2f, + 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, + 0x2f, 0x63, 0x6f, 0x64, 0x65, 0x73, 0x2f, 0x7b, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x7d, + 0x12, 0x77, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x24, 0x2e, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, + 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x20, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1a, 0x12, + 0x18, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, + 0x76, 0x31, 0x2f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x78, 0x0a, 0x07, 0x45, 0x74, 0x68, + 0x43, 0x61, 0x6c, 0x6c, 0x12, 0x20, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, + 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x74, 0x68, 0x43, 0x61, 0x6c, 0x6c, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, + 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x45, 0x74, 0x68, + 0x65, 0x72, 0x65, 0x75, 0x6d, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x22, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x12, 0x1a, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, + 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x74, 0x68, 0x5f, 0x63, + 0x61, 0x6c, 0x6c, 0x12, 0x7e, 0x0a, 0x0b, 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x47, + 0x61, 0x73, 0x12, 0x20, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, + 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x74, 0x68, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, + 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, + 0x47, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x26, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x20, 0x12, 0x1e, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, + 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x5f, + 0x67, 0x61, 0x73, 0x12, 0x7c, 0x0a, 0x07, 0x54, 0x72, 0x61, 0x63, 0x65, 0x54, 0x78, 0x12, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, - 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x20, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1a, 0x12, 0x18, 0x2f, + 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x54, 0x78, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, + 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, + 0x61, 0x63, 0x65, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x22, 0x82, + 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x12, 0x1a, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, + 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5f, 0x74, + 0x78, 0x12, 0x88, 0x01, 0x0a, 0x0a, 0x54, 0x72, 0x61, 0x63, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, + 0x12, 0x28, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, + 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x42, 0x6c, + 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x25, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x12, 0x1d, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, - 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x91, 0x01, 0x0a, 0x0a, 0x50, 0x72, 0x65, 0x63, - 0x6f, 0x6d, 0x70, 0x69, 0x6c, 0x65, 0x12, 0x28, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, - 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, - 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x70, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x29, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, - 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x70, - 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2e, 0x82, 0xd3, 0xe4, - 0x93, 0x02, 0x28, 0x12, 0x26, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, - 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x70, 0x69, 0x6c, - 0x65, 0x2f, 0x7b, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x7d, 0x12, 0x9f, 0x01, 0x0a, 0x11, - 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4d, 0x69, 0x6e, 0x47, 0x61, 0x73, 0x50, 0x72, 0x69, 0x63, - 0x65, 0x12, 0x2f, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, - 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, - 0x4d, 0x69, 0x6e, 0x47, 0x61, 0x73, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, - 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x47, 0x6c, 0x6f, 0x62, 0x61, - 0x6c, 0x4d, 0x69, 0x6e, 0x47, 0x61, 0x73, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x27, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x21, 0x12, 0x1f, 0x2f, 0x63, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, - 0x6d, 0x69, 0x6e, 0x5f, 0x67, 0x61, 0x73, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x42, 0xad, 0x01, - 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, - 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x42, 0x0a, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x72, 0x6f, - 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x26, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, - 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, - 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x3b, 0x76, 0x6d, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x43, - 0x45, 0x56, 0xaa, 0x02, 0x10, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x45, 0x76, 0x6d, 0x2e, - 0x56, 0x6d, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x10, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5c, 0x45, - 0x76, 0x6d, 0x5c, 0x56, 0x6d, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1c, 0x43, 0x6f, 0x73, 0x6d, 0x6f, - 0x73, 0x5c, 0x45, 0x76, 0x6d, 0x5c, 0x56, 0x6d, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, - 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x13, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, - 0x3a, 0x3a, 0x45, 0x76, 0x6d, 0x3a, 0x3a, 0x56, 0x6d, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x2f, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x84, 0x01, 0x0a, + 0x09, 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x12, 0x27, 0x2e, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, + 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x63, + 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x24, 0x82, + 0xd3, 0xe4, 0x93, 0x02, 0x1e, 0x12, 0x1c, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, + 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5f, 0x63, + 0x61, 0x6c, 0x6c, 0x12, 0x7c, 0x0a, 0x07, 0x42, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x12, 0x25, + 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, + 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, + 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, + 0x73, 0x65, 0x46, 0x65, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x22, 0x82, + 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x12, 0x1a, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, + 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, + 0x65, 0x12, 0x77, 0x0a, 0x06, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x24, 0x2e, 0x63, 0x6f, + 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, + 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, + 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x20, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1a, + 0x12, 0x18, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, + 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x91, 0x01, 0x0a, 0x0a, 0x50, + 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x70, 0x69, 0x6c, 0x65, 0x12, 0x28, 0x2e, 0x63, 0x6f, 0x73, 0x6d, + 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, + 0x72, 0x79, 0x50, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x70, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, 0x6d, + 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x72, 0x65, 0x63, + 0x6f, 0x6d, 0x70, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2e, + 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x28, 0x12, 0x26, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, + 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x72, 0x65, 0x63, 0x6f, 0x6d, + 0x70, 0x69, 0x6c, 0x65, 0x2f, 0x7b, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x7d, 0x12, 0x9f, + 0x01, 0x0a, 0x11, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4d, 0x69, 0x6e, 0x47, 0x61, 0x73, 0x50, + 0x72, 0x69, 0x63, 0x65, 0x12, 0x2f, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, 0x76, + 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x47, 0x6c, 0x6f, + 0x62, 0x61, 0x6c, 0x4d, 0x69, 0x6e, 0x47, 0x61, 0x73, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x65, + 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x47, 0x6c, + 0x6f, 0x62, 0x61, 0x6c, 0x4d, 0x69, 0x6e, 0x47, 0x61, 0x73, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x27, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x21, 0x12, + 0x1f, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, + 0x76, 0x31, 0x2f, 0x6d, 0x69, 0x6e, 0x5f, 0x67, 0x61, 0x73, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, + 0x42, 0xad, 0x01, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, + 0x65, 0x76, 0x6d, 0x2e, 0x76, 0x6d, 0x2e, 0x76, 0x31, 0x42, 0x0a, 0x51, 0x75, 0x65, 0x72, 0x79, + 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x26, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, + 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, + 0x2f, 0x65, 0x76, 0x6d, 0x2f, 0x76, 0x6d, 0x2f, 0x76, 0x31, 0x3b, 0x76, 0x6d, 0x76, 0x31, 0xa2, + 0x02, 0x03, 0x43, 0x45, 0x56, 0xaa, 0x02, 0x10, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x45, + 0x76, 0x6d, 0x2e, 0x56, 0x6d, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x10, 0x43, 0x6f, 0x73, 0x6d, 0x6f, + 0x73, 0x5c, 0x45, 0x76, 0x6d, 0x5c, 0x56, 0x6d, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1c, 0x43, 0x6f, + 0x73, 0x6d, 0x6f, 0x73, 0x5c, 0x45, 0x76, 0x6d, 0x5c, 0x56, 0x6d, 0x5c, 0x56, 0x31, 0x5c, 0x47, + 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x13, 0x43, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x3a, 0x3a, 0x45, 0x76, 0x6d, 0x3a, 0x3a, 0x56, 0x6d, 0x3a, 0x3a, 0x56, 0x31, + 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/proto/cosmos/evm/vm/v1/query.proto b/proto/cosmos/evm/vm/v1/query.proto index a5841ffdf..126229e6c 100644 --- a/proto/cosmos/evm/vm/v1/query.proto +++ b/proto/cosmos/evm/vm/v1/query.proto @@ -126,8 +126,6 @@ message QueryPrecompileRequest { message QueryPrecompileResponse { // is_precompile indicates if the address is a precompile contract bool is_precompile = 1; - // is_static indicates if it's a static precompile (true) or dynamic precompile (false) - bool is_static = 2; } // QueryAccountRequest is the request type for the Query/Account RPC method. diff --git a/rpc/backend/call_tx.go b/rpc/backend/call_tx.go index 7335b1f34..f6b436253 100644 --- a/rpc/backend/call_tx.go +++ b/rpc/backend/call_tx.go @@ -391,15 +391,15 @@ func (b *Backend) DoCall( // this makes sure resources are cleaned up. defer cancel() - var isDynamic bool + var isPrecompile bool if args.To != nil { precompileReq := &evmtypes.QueryPrecompileRequest{Address: args.To.Hex()} if res, err := b.QueryClient.Precompile(ctx, precompileReq); err == nil { - isDynamic = res.IsPrecompile && !res.IsStatic + isPrecompile = res.IsPrecompile } } - evmOverrides, cosmosOverrides, err := rpctypes.ParseOverrides(overrides, isDynamic) + evmOverrides, cosmosOverrides, err := rpctypes.ParseOverrides(overrides, isPrecompile) if err != nil { return nil, fmt.Errorf("failed to parse overrides: %w", err) } diff --git a/rpc/types/types.go b/rpc/types/types.go index 7d300447b..eb4c207fa 100644 --- a/rpc/types/types.go +++ b/rpc/types/types.go @@ -192,13 +192,13 @@ type TraceConfig struct { } // ParseOverrides attempts to parse overrides as StateOverride -// If isDynamicPrecompile is true, it will handle aligned cosmos override format for the target dynamic precompile -func ParseOverrides(overrides *json.RawMessage, isDynamicPrecompile bool) (*StateOverride, []evmtypes.StoreStateDiff, error) { +// If isPrecompile is true, it will handle aligned cosmos override format for the target precompile +func ParseOverrides(overrides *json.RawMessage, isPrecompile bool) (*StateOverride, []evmtypes.StoreStateDiff, error) { if overrides == nil { return nil, nil, nil } - if isDynamicPrecompile { + if isPrecompile { var rawOverrides map[string]interface{} if err := json.Unmarshal(*overrides, &rawOverrides); err == nil { for _, encodedData := range rawOverrides { diff --git a/x/vm/keeper/grpc_query.go b/x/vm/keeper/grpc_query.go index 98f7ca5aa..df90f74d4 100644 --- a/x/vm/keeper/grpc_query.go +++ b/x/vm/keeper/grpc_query.go @@ -892,16 +892,8 @@ func (k Keeper) Precompile(c context.Context, req *types.QueryPrecompileRequest) return nil, status.Error(codes.Internal, err.Error()) } - isStatic := false - if found { - params := k.GetParams(ctx) - _, staticFound, _ := k.GetStaticPrecompileInstance(¶ms, address) - isStatic = staticFound - } - return &types.QueryPrecompileResponse{ IsPrecompile: found, - IsStatic: isStatic, }, nil } diff --git a/x/vm/types/query.pb.go b/x/vm/types/query.pb.go index 3f58751d9..fdf1b1a06 100644 --- a/x/vm/types/query.pb.go +++ b/x/vm/types/query.pb.go @@ -170,8 +170,6 @@ func (m *QueryPrecompileRequest) GetAddress() string { type QueryPrecompileResponse struct { // is_precompile indicates if the address is a precompile contract IsPrecompile bool `protobuf:"varint,1,opt,name=is_precompile,json=isPrecompile,proto3" json:"is_precompile,omitempty"` - // is_static indicates if it's a static precompile (true) or dynamic precompile (false) - IsStatic bool `protobuf:"varint,2,opt,name=is_static,json=isStatic,proto3" json:"is_static,omitempty"` } func (m *QueryPrecompileResponse) Reset() { *m = QueryPrecompileResponse{} } @@ -214,13 +212,6 @@ func (m *QueryPrecompileResponse) GetIsPrecompile() bool { return false } -func (m *QueryPrecompileResponse) GetIsStatic() bool { - if m != nil { - return m.IsStatic - } - return false -} - // QueryAccountRequest is the request type for the Query/Account RPC method. type QueryAccountRequest struct { // address is the ethereum hex address to query the account for. @@ -1911,127 +1902,126 @@ func init() { func init() { proto.RegisterFile("cosmos/evm/vm/v1/query.proto", fileDescriptor_0e8f08e175b3ef0c) } var fileDescriptor_0e8f08e175b3ef0c = []byte{ - // 1910 bytes of a gzipped FileDescriptorProto + // 1895 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x58, 0xcd, 0x6f, 0x24, 0x47, - 0x15, 0x77, 0x7b, 0xc6, 0x9e, 0x99, 0x67, 0x7b, 0xd7, 0x5b, 0xf1, 0x26, 0xb3, 0x83, 0x3d, 0xe3, - 0xed, 0x5d, 0x7f, 0xec, 0xae, 0xd3, 0x1d, 0x9b, 0x80, 0xc4, 0x82, 0x04, 0x6b, 0xe3, 0x38, 0x21, - 0xbb, 0x64, 0xe9, 0x58, 0x1c, 0x40, 0x68, 0x54, 0xd3, 0x53, 0x9e, 0x69, 0x79, 0xba, 0x7b, 0xd2, - 0xd5, 0x36, 0xe3, 0x24, 0xcb, 0x01, 0x41, 0x48, 0x94, 0x4b, 0x10, 0x77, 0xc8, 0x05, 0xc4, 0x0d, - 0x6e, 0xfc, 0x0b, 0x39, 0x46, 0xe2, 0x82, 0x38, 0x2c, 0x68, 0x17, 0x09, 0xfe, 0x06, 0x4e, 0xa8, - 0xaa, 0x5e, 0x4f, 0x77, 0xbb, 0xa7, 0x67, 0xbc, 0x68, 0x11, 0x1c, 0x90, 0x46, 0x76, 0x7d, 0xbc, - 0x8f, 0x5f, 0xbd, 0xf7, 0xea, 0xd5, 0x7b, 0x0d, 0xcb, 0xb6, 0xcf, 0x5d, 0x9f, 0x9b, 0xec, 0xd4, - 0x35, 0xc5, 0x6f, 0xdb, 0x7c, 0xe7, 0x84, 0x05, 0x67, 0x46, 0x3f, 0xf0, 0x43, 0x9f, 0x2c, 0xaa, - 0x5d, 0x83, 0x9d, 0xba, 0x86, 0xf8, 0x6d, 0xd7, 0xae, 0x50, 0xd7, 0xf1, 0x7c, 0x53, 0xfe, 0x55, - 0x44, 0xb5, 0xdb, 0x28, 0xa2, 0x45, 0x39, 0x53, 0xdc, 0xe6, 0xe9, 0x76, 0x8b, 0x85, 0x74, 0xdb, - 0xec, 0xd3, 0x8e, 0xe3, 0xd1, 0xd0, 0xf1, 0x3d, 0xa4, 0xad, 0x65, 0xd4, 0x09, 0xd1, 0x6a, 0xef, - 0x5a, 0x66, 0x2f, 0x1c, 0xe0, 0xd6, 0x52, 0xc7, 0xef, 0xf8, 0x72, 0x68, 0x8a, 0x11, 0xae, 0x2e, - 0x77, 0x7c, 0xbf, 0xd3, 0x63, 0x26, 0xed, 0x3b, 0x26, 0xf5, 0x3c, 0x3f, 0x94, 0x9a, 0x38, 0xee, - 0x36, 0x70, 0x57, 0xce, 0x5a, 0x27, 0x47, 0x66, 0xe8, 0xb8, 0x8c, 0x87, 0xd4, 0xed, 0x2b, 0x02, - 0x7d, 0x09, 0xc8, 0x77, 0x04, 0xda, 0x3d, 0xdf, 0x3b, 0x72, 0x3a, 0x16, 0x7b, 0xe7, 0x84, 0xf1, - 0x50, 0xbf, 0x0f, 0x2f, 0xa4, 0x56, 0x79, 0xdf, 0xf7, 0x38, 0x23, 0x5f, 0x82, 0x59, 0x5b, 0xae, - 0x54, 0xb5, 0x55, 0x6d, 0x73, 0x6e, 0x67, 0xc5, 0x38, 0x6f, 0x1a, 0x63, 0xaf, 0x4b, 0x1d, 0x0f, - 0xd9, 0x90, 0x58, 0xdf, 0x81, 0x17, 0xa5, 0xb4, 0x87, 0x01, 0xb3, 0x7d, 0xb7, 0xef, 0xf4, 0x18, - 0xea, 0x21, 0x55, 0x28, 0xd1, 0x76, 0x3b, 0x60, 0x9c, 0x4b, 0x89, 0x15, 0x2b, 0x9a, 0xea, 0xdf, - 0x87, 0x97, 0x32, 0x3c, 0x88, 0xe2, 0x06, 0x2c, 0x38, 0xbc, 0xd9, 0x1f, 0x6e, 0x48, 0xd6, 0xb2, - 0x35, 0xef, 0xf0, 0x98, 0x98, 0x7c, 0x01, 0x2a, 0x0e, 0x6f, 0x72, 0x61, 0x0d, 0xbb, 0x3a, 0x2d, - 0x09, 0xca, 0x0e, 0x7f, 0x5b, 0xce, 0xf5, 0xaf, 0xe0, 0xf1, 0xee, 0xd9, 0xb6, 0x7f, 0xe2, 0x85, - 0x13, 0xd1, 0xdc, 0x2d, 0x7f, 0xf8, 0x69, 0x63, 0xea, 0x1f, 0x9f, 0x36, 0xa6, 0x74, 0x1b, 0x96, - 0xd2, 0xac, 0x08, 0xaa, 0x0a, 0xa5, 0x16, 0xed, 0x51, 0xcf, 0x66, 0x11, 0x2f, 0x4e, 0x05, 0x12, - 0xdb, 0x6f, 0xb3, 0x66, 0x97, 0xf2, 0xae, 0x44, 0x52, 0xb1, 0xca, 0x62, 0xe1, 0x75, 0xca, 0xbb, - 0x64, 0x09, 0x66, 0x3c, 0x5f, 0x30, 0x15, 0x56, 0xb5, 0xcd, 0xa2, 0xa5, 0x26, 0xfa, 0xd7, 0xe1, - 0x1a, 0x9a, 0x5f, 0x58, 0xf7, 0xdf, 0x40, 0xf9, 0x81, 0x06, 0xb5, 0x51, 0x12, 0x10, 0xec, 0x1a, - 0x5c, 0x52, 0x8e, 0x6b, 0xa6, 0x25, 0x2d, 0xa8, 0xd5, 0x7b, 0x6a, 0x91, 0xd4, 0xa0, 0xcc, 0x85, - 0x52, 0x81, 0x6f, 0x5a, 0xe2, 0x1b, 0xce, 0x85, 0x08, 0xaa, 0xa4, 0x36, 0xbd, 0x13, 0xb7, 0xc5, - 0x02, 0x3c, 0xc1, 0x02, 0xae, 0x7e, 0x5b, 0x2e, 0xea, 0x6f, 0xc2, 0xb2, 0xc4, 0xf1, 0x5d, 0xda, - 0x73, 0xda, 0x34, 0xf4, 0x83, 0x73, 0x87, 0xb9, 0x0e, 0xf3, 0xb6, 0xef, 0x9d, 0xc7, 0x31, 0x27, - 0xd6, 0xee, 0x65, 0x4e, 0xf5, 0xb1, 0x06, 0x2b, 0x39, 0xd2, 0xf0, 0x60, 0x1b, 0x70, 0x39, 0x42, - 0x95, 0x96, 0x18, 0x81, 0x7d, 0x8e, 0x47, 0x8b, 0x82, 0x68, 0x57, 0xf9, 0xf9, 0x59, 0xdc, 0xf3, - 0x0a, 0x06, 0xd1, 0x90, 0x75, 0x52, 0x10, 0xe9, 0x6f, 0xa2, 0xb2, 0xb7, 0x43, 0x3f, 0xa0, 0x9d, - 0xc9, 0xca, 0xc8, 0x22, 0x14, 0x8e, 0xd9, 0x19, 0xc6, 0x9b, 0x18, 0x26, 0xd4, 0x6f, 0xa1, 0xfa, - 0xa1, 0x30, 0x54, 0xbf, 0x04, 0x33, 0xa7, 0xb4, 0x77, 0x12, 0x29, 0x57, 0x13, 0xfd, 0xcb, 0xb0, - 0x88, 0xa1, 0xd4, 0x7e, 0xa6, 0x43, 0x6e, 0xc0, 0x95, 0x04, 0x1f, 0xaa, 0x20, 0x50, 0x14, 0xb1, - 0x2f, 0xb9, 0xe6, 0x2d, 0x39, 0xd6, 0xdf, 0xc5, 0x14, 0x74, 0x38, 0xb8, 0xef, 0x77, 0x78, 0xa4, - 0x82, 0x40, 0x51, 0xde, 0x18, 0x25, 0x5f, 0x8e, 0xc9, 0x6b, 0x00, 0x71, 0x32, 0x95, 0x67, 0x9b, - 0xdb, 0x59, 0x8f, 0x72, 0x90, 0xc8, 0xbc, 0x86, 0xca, 0xdb, 0x98, 0x79, 0x8d, 0x87, 0xb1, 0xa9, - 0xac, 0x04, 0x67, 0x02, 0xe4, 0x47, 0x1a, 0x1a, 0x36, 0x52, 0x8e, 0x38, 0x6f, 0x41, 0xb1, 0xe7, - 0x77, 0xc4, 0xe9, 0x0a, 0x9b, 0x73, 0x3b, 0x57, 0xb3, 0x79, 0xee, 0xbe, 0xdf, 0xb1, 0x24, 0x09, - 0x39, 0x18, 0x01, 0x6a, 0x63, 0x22, 0x28, 0xa5, 0x27, 0x89, 0x6a, 0x98, 0x8a, 0x1f, 0xd2, 0x80, - 0xba, 0x91, 0x1d, 0x74, 0x0b, 0x01, 0x46, 0xab, 0x08, 0xf0, 0xab, 0x30, 0xdb, 0x97, 0x2b, 0x98, - 0x8a, 0xab, 0x59, 0x88, 0x8a, 0x63, 0xb7, 0xf2, 0xd9, 0xe3, 0xc6, 0xd4, 0x6f, 0xff, 0xfe, 0xfb, - 0xdb, 0x9a, 0x85, 0x2c, 0xfa, 0x7d, 0x00, 0x91, 0x09, 0xd9, 0xbe, 0x17, 0x06, 0x67, 0x51, 0xa8, - 0x28, 0x97, 0x88, 0x61, 0x1c, 0x08, 0xd3, 0x72, 0x4d, 0x4d, 0xc8, 0x8b, 0x30, 0xdb, 0x66, 0x3d, - 0x16, 0xaa, 0x64, 0x55, 0xb6, 0x70, 0xa6, 0xb7, 0xe0, 0x92, 0x88, 0x24, 0x26, 0x45, 0x7e, 0xd3, - 0x39, 0x3a, 0x12, 0xbe, 0xf3, 0xa8, 0x1b, 0xc5, 0x91, 0x1c, 0x93, 0xaf, 0x41, 0x89, 0x79, 0x61, - 0xe0, 0x30, 0x5e, 0x9d, 0x96, 0x46, 0x5d, 0xce, 0x22, 0x8e, 0x41, 0xed, 0x16, 0x05, 0x6a, 0x2b, - 0x62, 0xd1, 0x7f, 0x33, 0x0d, 0x97, 0xf6, 0xc3, 0xee, 0x1e, 0xed, 0xf5, 0x12, 0x01, 0x42, 0x83, - 0x0e, 0x8f, 0x42, 0x49, 0x8c, 0xc9, 0x4b, 0x50, 0xea, 0x50, 0xde, 0xb4, 0x69, 0x1f, 0x6f, 0xf5, - 0x6c, 0x87, 0xf2, 0x3d, 0xda, 0x27, 0x3f, 0x80, 0xc5, 0x7e, 0xe0, 0xf7, 0x7d, 0xce, 0x82, 0x61, - 0x66, 0x10, 0xa7, 0x98, 0xdf, 0xdd, 0xf9, 0xe7, 0xe3, 0x86, 0xd1, 0x71, 0xc2, 0xee, 0x49, 0xcb, - 0xb0, 0x7d, 0xd7, 0xc4, 0xf7, 0x57, 0xfd, 0x7b, 0x99, 0xb7, 0x8f, 0xcd, 0xf0, 0xac, 0xcf, 0xb8, - 0xb1, 0x17, 0xa7, 0x24, 0xeb, 0x72, 0x24, 0x2b, 0x4a, 0x27, 0xd7, 0xa0, 0x6c, 0x8b, 0x87, 0xaf, - 0xe9, 0xb4, 0xab, 0xc5, 0x55, 0x6d, 0xb3, 0x60, 0x95, 0xe4, 0xfc, 0x8d, 0x36, 0x59, 0x86, 0x8a, - 0x7f, 0xca, 0x82, 0xc0, 0x69, 0x33, 0x5e, 0x9d, 0x91, 0x58, 0xe3, 0x05, 0xf2, 0x16, 0x5c, 0x16, - 0x6f, 0x14, 0x6b, 0xc6, 0x34, 0xb3, 0xd2, 0x3a, 0xab, 0xa3, 0xac, 0x93, 0x34, 0x32, 0x5a, 0xe8, - 0x92, 0x64, 0x7f, 0x2b, 0xe2, 0xd6, 0x0f, 0xe1, 0x85, 0x7d, 0x1e, 0x3a, 0x2e, 0x0d, 0xd9, 0x01, - 0x8d, 0xc3, 0x65, 0x11, 0x0a, 0x1d, 0xaa, 0x6c, 0x55, 0xb4, 0xc4, 0x50, 0xac, 0x04, 0x2c, 0x44, - 0x0f, 0x8b, 0xa1, 0x38, 0xc4, 0xa9, 0xdb, 0x64, 0x41, 0xe0, 0xab, 0x8c, 0x57, 0xb1, 0x4a, 0xa7, - 0xee, 0xbe, 0x98, 0xea, 0x1f, 0x15, 0xa3, 0x6b, 0x12, 0x50, 0x9b, 0x1d, 0x0e, 0x22, 0x1f, 0x6c, - 0x43, 0xc1, 0xe5, 0x51, 0x35, 0xd0, 0xc8, 0x42, 0x7e, 0xc0, 0x3b, 0xfb, 0x61, 0x97, 0x05, 0xec, - 0xc4, 0x3d, 0x1c, 0x58, 0x82, 0x96, 0x7c, 0x03, 0xe6, 0x43, 0x21, 0xa4, 0x89, 0x95, 0x44, 0x21, - 0xaf, 0x92, 0x90, 0xaa, 0xb0, 0x92, 0x98, 0x0b, 0xe3, 0x09, 0xd9, 0x83, 0xf9, 0x7e, 0xc0, 0xda, - 0xcc, 0x66, 0x9c, 0xfb, 0x01, 0xaf, 0x16, 0xa5, 0xc1, 0x26, 0x6a, 0x4f, 0x31, 0x89, 0x87, 0xa7, - 0xd5, 0xf3, 0xed, 0xe3, 0x28, 0xc5, 0xcf, 0x48, 0xaf, 0xcd, 0xc9, 0x35, 0x95, 0xe0, 0xc9, 0x0a, - 0x80, 0x22, 0x91, 0x79, 0x68, 0x56, 0x5a, 0xa4, 0x22, 0x57, 0xe4, 0xd3, 0xfd, 0x7a, 0xb4, 0x2d, - 0x4a, 0xaa, 0x6a, 0x49, 0x1e, 0xa3, 0x66, 0xa8, 0x7a, 0xcb, 0x88, 0xea, 0x2d, 0xe3, 0x30, 0xaa, - 0xb7, 0x76, 0x17, 0x84, 0xbf, 0x3e, 0xf9, 0x4b, 0x43, 0x53, 0x77, 0x51, 0x49, 0x12, 0xdb, 0x23, - 0x83, 0xb3, 0xfc, 0x9f, 0x09, 0xce, 0x4a, 0x3a, 0x38, 0x75, 0x58, 0x50, 0x67, 0x70, 0xe9, 0xa0, - 0x29, 0x02, 0x04, 0x12, 0x66, 0x78, 0x40, 0x07, 0x07, 0x94, 0x7f, 0xab, 0x58, 0x9e, 0x5e, 0x2c, - 0x58, 0xe5, 0x70, 0xd0, 0x74, 0xbc, 0x36, 0x1b, 0xe8, 0xb7, 0xf1, 0xf5, 0x18, 0x86, 0x42, 0x9c, - 0xda, 0xdb, 0x34, 0xa4, 0xd1, 0x7d, 0x14, 0x63, 0xfd, 0x0f, 0x05, 0x2c, 0xfd, 0x24, 0xf1, 0xae, - 0x90, 0x9a, 0x08, 0x9d, 0x70, 0x10, 0x25, 0xd8, 0xc9, 0xa1, 0x13, 0x0e, 0xf8, 0x73, 0x08, 0x9d, - 0xff, 0x7b, 0xfd, 0x82, 0x5e, 0xd7, 0x5f, 0xc6, 0xfa, 0x3b, 0xe9, 0xb8, 0x31, 0x8e, 0xfe, 0x59, - 0x01, 0xae, 0xc6, 0xf4, 0xff, 0xab, 0x69, 0xfa, 0x7c, 0x00, 0x15, 0xff, 0x0b, 0x01, 0xb4, 0xf7, - 0x8c, 0x01, 0x54, 0x8e, 0x02, 0x28, 0x19, 0x3b, 0x49, 0xe7, 0x96, 0x53, 0xce, 0xd5, 0xb7, 0x92, - 0x37, 0x4e, 0x39, 0x62, 0x8c, 0xdf, 0xae, 0x0e, 0x8b, 0x58, 0xce, 0x5e, 0x63, 0x2c, 0xee, 0xff, - 0x96, 0xd2, 0xcb, 0x28, 0xe2, 0x55, 0x28, 0x8b, 0x8a, 0xa6, 0x79, 0xc4, 0xf0, 0x71, 0xdf, 0xbd, - 0xf6, 0xe7, 0xc7, 0x8d, 0xab, 0xca, 0x7e, 0xbc, 0x7d, 0x6c, 0x38, 0xbe, 0xe9, 0xd2, 0xb0, 0x6b, - 0xbc, 0xe1, 0x85, 0xa2, 0x78, 0x95, 0xdc, 0x7a, 0x03, 0xcb, 0xf6, 0x83, 0x9e, 0xdf, 0xa2, 0xbd, - 0x07, 0x8e, 0x77, 0x40, 0xf9, 0xc3, 0xc0, 0x19, 0xd6, 0xcc, 0xba, 0x0d, 0xf5, 0x3c, 0x02, 0x54, - 0x7c, 0x0f, 0x16, 0x5c, 0xc7, 0x13, 0xc1, 0xda, 0xec, 0x8b, 0x0d, 0xd4, 0xbe, 0x22, 0x8c, 0x93, - 0x8f, 0x60, 0xce, 0x8d, 0x45, 0xed, 0xfc, 0xfa, 0x0a, 0xcc, 0x48, 0x2d, 0xe4, 0xa7, 0x1a, 0x94, - 0xb0, 0x73, 0x20, 0x6b, 0x59, 0xe7, 0x8f, 0x68, 0x0d, 0x6b, 0xeb, 0x93, 0xc8, 0x14, 0x4e, 0xfd, - 0xce, 0x8f, 0xff, 0xf8, 0xb7, 0x5f, 0x4c, 0xaf, 0x91, 0x1b, 0x66, 0xa6, 0x8f, 0xc7, 0xee, 0xc1, - 0x7c, 0x0f, 0x03, 0xfb, 0x11, 0xf9, 0xa5, 0x06, 0x0b, 0xa9, 0x06, 0x8d, 0xdc, 0xc9, 0x51, 0x33, - 0xaa, 0x11, 0xac, 0x6d, 0x5d, 0x8c, 0x18, 0x91, 0xed, 0x48, 0x64, 0x5b, 0xe4, 0x76, 0x16, 0x59, - 0xd4, 0x0b, 0x66, 0x00, 0xfe, 0x4e, 0x83, 0xc5, 0xf3, 0xbd, 0x16, 0x31, 0x72, 0xd4, 0xe6, 0xb4, - 0x78, 0x35, 0xf3, 0xc2, 0xf4, 0x88, 0xf4, 0xae, 0x44, 0xfa, 0x2a, 0xd9, 0xc9, 0x22, 0x3d, 0x8d, - 0x78, 0x62, 0xb0, 0xc9, 0xf6, 0xf1, 0x11, 0xf9, 0x40, 0x83, 0x12, 0x76, 0x55, 0xb9, 0xae, 0x4d, - 0x37, 0x6c, 0xb9, 0xae, 0x3d, 0xd7, 0x9c, 0xe9, 0x5b, 0x12, 0xd6, 0x3a, 0xb9, 0x99, 0x85, 0x85, - 0x5d, 0x1a, 0x4f, 0x98, 0xee, 0x63, 0x0d, 0x4a, 0xd8, 0x5f, 0xe5, 0x02, 0x49, 0x37, 0x73, 0xb9, - 0x40, 0xce, 0xb5, 0x69, 0xfa, 0xb6, 0x04, 0x72, 0x87, 0xdc, 0xca, 0x02, 0xe1, 0x8a, 0x34, 0xc6, - 0x61, 0xbe, 0x77, 0xcc, 0xce, 0x1e, 0x91, 0x77, 0xa1, 0x28, 0xda, 0x30, 0xa2, 0xe7, 0x86, 0xcc, - 0xb0, 0xb7, 0xab, 0xdd, 0x18, 0x4b, 0x83, 0x18, 0x6e, 0x49, 0x0c, 0x37, 0xc8, 0xf5, 0x51, 0xd1, - 0xd4, 0x4e, 0x59, 0xe2, 0x87, 0x30, 0xab, 0x3a, 0x11, 0x72, 0x33, 0x47, 0x72, 0xaa, 0xe1, 0xa9, - 0xad, 0x4d, 0xa0, 0x42, 0x04, 0xab, 0x12, 0x41, 0x8d, 0x54, 0xb3, 0x08, 0x54, 0x97, 0x43, 0x06, - 0x50, 0xc2, 0x96, 0x81, 0x8c, 0xa8, 0xa6, 0xd3, 0xdd, 0x44, 0x6d, 0x63, 0x52, 0x05, 0x12, 0xe9, - 0xd5, 0xa5, 0xde, 0x65, 0x52, 0xcb, 0xea, 0x65, 0x61, 0xb7, 0x69, 0x0b, 0x75, 0x3f, 0x82, 0xb9, - 0x44, 0x11, 0x7e, 0x01, 0xed, 0x23, 0xce, 0x3c, 0xa2, 0x8a, 0xd7, 0xd7, 0xa5, 0xee, 0x55, 0x52, - 0x1f, 0xa1, 0x1b, 0xc9, 0x45, 0x8a, 0x24, 0xef, 0x43, 0x09, 0xab, 0xb3, 0xdc, 0xd8, 0x4b, 0x17, - 0xf2, 0xb9, 0xb1, 0x77, 0xae, 0xc8, 0x1b, 0x77, 0x7a, 0xf5, 0xb2, 0x86, 0x03, 0xf2, 0xa1, 0x06, - 0x10, 0x97, 0x0d, 0x64, 0x73, 0x9c, 0xe8, 0x64, 0x49, 0x58, 0xbb, 0x75, 0x01, 0x4a, 0xc4, 0xb1, - 0x26, 0x71, 0x34, 0xc8, 0x4a, 0x1e, 0x0e, 0xf9, 0x56, 0x92, 0x9f, 0x68, 0x50, 0x19, 0x3e, 0x84, - 0x64, 0x63, 0x9c, 0xfc, 0xa4, 0x3b, 0x36, 0x27, 0x13, 0x22, 0x8e, 0x9b, 0x12, 0x47, 0x9d, 0x2c, - 0xe7, 0xe1, 0x90, 0xf1, 0xf0, 0xbe, 0x48, 0x4a, 0xf2, 0x2d, 0x1c, 0x93, 0x94, 0x92, 0x0f, 0xf0, - 0x98, 0xa4, 0x94, 0x7a, 0x90, 0xc7, 0xf9, 0x23, 0x7a, 0xa8, 0xc5, 0x05, 0xc4, 0xea, 0xe5, 0x66, - 0xee, 0xd5, 0x4e, 0x7c, 0xfc, 0xcd, 0xbd, 0x80, 0xe9, 0x8f, 0xc1, 0xe3, 0x2e, 0xa0, 0x2a, 0xaf, - 0xc8, 0xcf, 0x35, 0x80, 0xc4, 0x27, 0xd9, 0x3c, 0xab, 0x66, 0x3e, 0x0b, 0xe7, 0x06, 0x42, 0xf6, - 0x63, 0xb0, 0x6e, 0x48, 0x14, 0x9b, 0x64, 0x7d, 0x44, 0x1a, 0x18, 0x52, 0x27, 0xb2, 0xd1, 0xaf, - 0x34, 0xb8, 0x92, 0x29, 0x33, 0x48, 0xde, 0x1b, 0x95, 0x57, 0xb1, 0xd4, 0x5e, 0xb9, 0x38, 0x03, - 0x02, 0xdd, 0x90, 0x40, 0xaf, 0x93, 0x46, 0x16, 0x68, 0xaa, 0xb2, 0xd9, 0xbd, 0xfb, 0xd9, 0x93, - 0xba, 0xf6, 0xf9, 0x93, 0xba, 0xf6, 0xd7, 0x27, 0x75, 0xed, 0x93, 0xa7, 0xf5, 0xa9, 0xcf, 0x9f, - 0xd6, 0xa7, 0xfe, 0xf4, 0xb4, 0x3e, 0xf5, 0xbd, 0xd5, 0x6c, 0xfd, 0x2b, 0x84, 0x0c, 0x84, 0x18, - 0x59, 0xfd, 0xb6, 0x66, 0x65, 0x01, 0xf9, 0xc5, 0x7f, 0x05, 0x00, 0x00, 0xff, 0xff, 0x8d, 0xd3, - 0x02, 0x95, 0xd1, 0x18, 0x00, 0x00, + 0x15, 0x77, 0x7b, 0xc6, 0x9e, 0xf1, 0xb3, 0xbd, 0xeb, 0xad, 0x78, 0x93, 0xd9, 0xc1, 0x9e, 0xf1, + 0xf6, 0xae, 0x3f, 0x76, 0xd7, 0xe9, 0x8e, 0x4d, 0x40, 0x62, 0x41, 0xc0, 0xda, 0x38, 0x4e, 0xc8, + 0x2e, 0x59, 0x3a, 0x16, 0x07, 0x24, 0x34, 0xaa, 0xe9, 0x29, 0xcf, 0xb4, 0x3c, 0xdd, 0x3d, 0xe9, + 0x6a, 0x9b, 0x71, 0x92, 0xe5, 0x80, 0x20, 0x24, 0xca, 0x25, 0x88, 0x3b, 0xe4, 0x02, 0xe2, 0x06, + 0x37, 0xfe, 0x85, 0x1c, 0x23, 0x71, 0x41, 0x1c, 0x16, 0xb4, 0x8b, 0x04, 0x7f, 0x03, 0x27, 0x54, + 0x55, 0xaf, 0xa7, 0xbb, 0xa7, 0xa7, 0x67, 0xbc, 0x68, 0x11, 0x1c, 0x90, 0x46, 0x76, 0x7d, 0xbc, + 0x8f, 0x5f, 0xbd, 0xf7, 0xea, 0xd5, 0x7b, 0x0d, 0x2b, 0xb6, 0xcf, 0x5d, 0x9f, 0x9b, 0xec, 0xcc, + 0x35, 0xc5, 0x6f, 0xc7, 0x7c, 0xe7, 0x94, 0x05, 0xe7, 0x46, 0x2f, 0xf0, 0x43, 0x9f, 0x2c, 0xa9, + 0x5d, 0x83, 0x9d, 0xb9, 0x86, 0xf8, 0xed, 0x54, 0xaf, 0x50, 0xd7, 0xf1, 0x7c, 0x53, 0xfe, 0x55, + 0x44, 0xd5, 0xdb, 0x28, 0xa2, 0x49, 0x39, 0x53, 0xdc, 0xe6, 0xd9, 0x4e, 0x93, 0x85, 0x74, 0xc7, + 0xec, 0xd1, 0xb6, 0xe3, 0xd1, 0xd0, 0xf1, 0x3d, 0xa4, 0xad, 0x66, 0xd4, 0x09, 0xd1, 0x6a, 0xef, + 0x5a, 0x66, 0x2f, 0xec, 0xe3, 0xd6, 0x72, 0xdb, 0x6f, 0xfb, 0x72, 0x68, 0x8a, 0x11, 0xae, 0xae, + 0xb4, 0x7d, 0xbf, 0xdd, 0x65, 0x26, 0xed, 0x39, 0x26, 0xf5, 0x3c, 0x3f, 0x94, 0x9a, 0x38, 0xee, + 0xd6, 0x71, 0x57, 0xce, 0x9a, 0xa7, 0xc7, 0x66, 0xe8, 0xb8, 0x8c, 0x87, 0xd4, 0xed, 0x29, 0x02, + 0x7d, 0x19, 0xc8, 0x77, 0x05, 0xda, 0x7d, 0xdf, 0x3b, 0x76, 0xda, 0x16, 0x7b, 0xe7, 0x94, 0xf1, + 0x50, 0xbf, 0x0f, 0x2f, 0xa4, 0x56, 0x79, 0xcf, 0xf7, 0x38, 0x23, 0x5f, 0x82, 0x59, 0x5b, 0xae, + 0x54, 0xb4, 0x35, 0x6d, 0x6b, 0x7e, 0x77, 0xd5, 0x18, 0x36, 0x8d, 0xb1, 0xdf, 0xa1, 0x8e, 0x87, + 0x6c, 0x48, 0xac, 0xef, 0xc2, 0x8b, 0x52, 0xda, 0xc3, 0x80, 0xd9, 0xbe, 0xdb, 0x73, 0xba, 0x0c, + 0xf5, 0x90, 0x0a, 0x94, 0x68, 0xab, 0x15, 0x30, 0xce, 0xa5, 0xc4, 0x39, 0x2b, 0x9a, 0xea, 0x5f, + 0x87, 0x97, 0x32, 0x3c, 0x88, 0xe2, 0x06, 0x2c, 0x3a, 0xbc, 0xd1, 0x1b, 0x6c, 0x48, 0xd6, 0xb2, + 0xb5, 0xe0, 0xf0, 0x98, 0x58, 0xff, 0x0a, 0x9e, 0xe0, 0x9e, 0x6d, 0xfb, 0xa7, 0x5e, 0x38, 0x51, + 0xe1, 0xdd, 0xf2, 0x87, 0x9f, 0xd6, 0xa7, 0xfe, 0xf1, 0x69, 0x7d, 0x4a, 0xb7, 0x61, 0x39, 0xcd, + 0x8a, 0x7a, 0x2b, 0x50, 0x6a, 0xd2, 0x2e, 0xf5, 0x6c, 0x16, 0xf1, 0xe2, 0x94, 0x7c, 0x01, 0xe6, + 0x6c, 0xbf, 0xc5, 0x1a, 0x1d, 0xca, 0x3b, 0x95, 0x69, 0xb9, 0x57, 0x16, 0x0b, 0xaf, 0x53, 0xde, + 0x21, 0xcb, 0x30, 0xe3, 0xf9, 0x82, 0xa9, 0xb0, 0xa6, 0x6d, 0x15, 0x2d, 0x35, 0xd1, 0xbf, 0x01, + 0xd7, 0xd0, 0xc2, 0xc2, 0x80, 0xff, 0x06, 0xca, 0x0f, 0x34, 0xa8, 0x8e, 0x92, 0x80, 0x60, 0xd7, + 0xe1, 0x92, 0xf2, 0x4d, 0x23, 0x2d, 0x69, 0x51, 0xad, 0xde, 0x53, 0x8b, 0xa4, 0x0a, 0x65, 0x2e, + 0x94, 0x0a, 0x7c, 0xd3, 0x12, 0xdf, 0x60, 0x2e, 0x44, 0x50, 0x25, 0xb5, 0xe1, 0x9d, 0xba, 0x4d, + 0x16, 0xe0, 0x09, 0x16, 0x71, 0xf5, 0x3b, 0x72, 0x51, 0x7f, 0x13, 0x56, 0x24, 0x8e, 0xef, 0xd1, + 0xae, 0xd3, 0xa2, 0xa1, 0x1f, 0x0c, 0x1d, 0xe6, 0x3a, 0x2c, 0xd8, 0xbe, 0x37, 0x8c, 0x63, 0x5e, + 0xac, 0xdd, 0xcb, 0x9c, 0xea, 0x63, 0x0d, 0x56, 0x73, 0xa4, 0xe1, 0xc1, 0x36, 0xe1, 0x72, 0x84, + 0x2a, 0x2d, 0x31, 0x02, 0xfb, 0x1c, 0x8f, 0x16, 0x05, 0xd1, 0x9e, 0xf2, 0xf3, 0xb3, 0xb8, 0xe7, + 0x15, 0x0c, 0xa2, 0x01, 0xeb, 0xa4, 0x20, 0xd2, 0xdf, 0x44, 0x65, 0x6f, 0x87, 0x7e, 0x40, 0xdb, + 0x93, 0x95, 0x91, 0x25, 0x28, 0x9c, 0xb0, 0x73, 0x8c, 0x37, 0x31, 0x4c, 0xa8, 0xdf, 0x46, 0xf5, + 0x03, 0x61, 0xa8, 0x7e, 0x19, 0x66, 0xce, 0x68, 0xf7, 0x34, 0x52, 0xae, 0x26, 0xfa, 0x97, 0x61, + 0x09, 0x43, 0xa9, 0xf5, 0x4c, 0x87, 0xdc, 0x84, 0x2b, 0x09, 0x3e, 0x54, 0x41, 0xa0, 0x28, 0x62, + 0x5f, 0x72, 0x2d, 0x58, 0x72, 0xac, 0xbf, 0x8b, 0x59, 0xe6, 0xa8, 0x7f, 0xdf, 0x6f, 0xf3, 0x48, + 0x05, 0x81, 0xa2, 0xbc, 0x31, 0x4a, 0xbe, 0x1c, 0x93, 0xd7, 0x00, 0xe2, 0x7c, 0x29, 0xcf, 0x36, + 0xbf, 0xbb, 0x11, 0xa5, 0x19, 0x91, 0x5c, 0x0d, 0x95, 0x9a, 0x31, 0xb9, 0x1a, 0x0f, 0x63, 0x53, + 0x59, 0x09, 0xce, 0x04, 0xc8, 0x8f, 0x34, 0x34, 0x6c, 0xa4, 0x1c, 0x71, 0xde, 0x82, 0x62, 0xd7, + 0x6f, 0x8b, 0xd3, 0x15, 0xb6, 0xe6, 0x77, 0xaf, 0x66, 0x53, 0xd9, 0x7d, 0xbf, 0x6d, 0x49, 0x12, + 0x72, 0x38, 0x02, 0xd4, 0xe6, 0x44, 0x50, 0x4a, 0x4f, 0x12, 0xd5, 0x20, 0xdb, 0x3e, 0xa4, 0x01, + 0x75, 0x23, 0x3b, 0xe8, 0x16, 0x02, 0x8c, 0x56, 0x11, 0xe0, 0x57, 0x61, 0xb6, 0x27, 0x57, 0x30, + 0xdb, 0x56, 0xb2, 0x10, 0x15, 0xc7, 0xde, 0xdc, 0x67, 0x8f, 0xeb, 0x53, 0xbf, 0xfd, 0xfb, 0xef, + 0x6f, 0x6b, 0x16, 0xb2, 0xe8, 0xf7, 0x01, 0xde, 0x0e, 0x69, 0xc8, 0x0e, 0xbc, 0x30, 0x38, 0x8f, + 0x42, 0x45, 0xb9, 0x44, 0x0c, 0xe3, 0x40, 0x98, 0x96, 0x6b, 0x6a, 0x42, 0x5e, 0x84, 0xd9, 0x16, + 0xeb, 0xb2, 0x50, 0x25, 0xab, 0xb2, 0x85, 0x33, 0xbd, 0x09, 0x97, 0x44, 0x24, 0x31, 0x29, 0xf2, + 0x5b, 0xce, 0xf1, 0xb1, 0xf0, 0x9d, 0x47, 0xdd, 0x28, 0x8e, 0xe4, 0x98, 0x7c, 0x0d, 0x4a, 0xcc, + 0x0b, 0x03, 0x87, 0xf1, 0xca, 0xb4, 0x34, 0xea, 0x4a, 0x16, 0x71, 0x0c, 0x6a, 0xaf, 0x28, 0x50, + 0x5b, 0x11, 0x8b, 0xfe, 0x9b, 0x69, 0xb8, 0x74, 0x10, 0x76, 0xf6, 0x69, 0xb7, 0x9b, 0x08, 0x10, + 0x1a, 0xb4, 0x79, 0x14, 0x4a, 0x62, 0x4c, 0x5e, 0x82, 0x52, 0x9b, 0xf2, 0x86, 0x4d, 0x7b, 0x78, + 0xab, 0x67, 0xdb, 0x94, 0xef, 0xd3, 0x1e, 0xf9, 0x01, 0x2c, 0xf5, 0x02, 0xbf, 0xe7, 0x73, 0x16, + 0x0c, 0x32, 0x83, 0x38, 0xc5, 0xc2, 0xde, 0xee, 0x3f, 0x1f, 0xd7, 0x8d, 0xb6, 0x13, 0x76, 0x4e, + 0x9b, 0x86, 0xed, 0xbb, 0x26, 0x3e, 0xb1, 0xea, 0xdf, 0xcb, 0xbc, 0x75, 0x62, 0x86, 0xe7, 0x3d, + 0xc6, 0x8d, 0xfd, 0x38, 0x25, 0x59, 0x97, 0x23, 0x59, 0x51, 0x3a, 0xb9, 0x06, 0x65, 0x5b, 0xbc, + 0x6d, 0x0d, 0xa7, 0x55, 0x29, 0xae, 0x69, 0x5b, 0x05, 0xab, 0x24, 0xe7, 0x6f, 0xb4, 0xc8, 0x0a, + 0xcc, 0xf9, 0x67, 0x2c, 0x08, 0x9c, 0x16, 0xe3, 0x95, 0x19, 0x89, 0x35, 0x5e, 0x20, 0x6f, 0xc1, + 0x65, 0x2e, 0x0e, 0xdd, 0x88, 0x69, 0x66, 0xa5, 0x75, 0xd6, 0x46, 0x59, 0x27, 0x69, 0x64, 0xb4, + 0xd0, 0x25, 0xc9, 0xfe, 0x56, 0xc4, 0xad, 0x1f, 0xc1, 0x0b, 0x07, 0x3c, 0x74, 0x5c, 0x1a, 0xb2, + 0x43, 0x1a, 0x87, 0xcb, 0x12, 0x14, 0xda, 0x54, 0xd9, 0xaa, 0x68, 0x89, 0xa1, 0x58, 0x09, 0x58, + 0x88, 0x1e, 0x16, 0x43, 0x71, 0x88, 0x33, 0xb7, 0xc1, 0x82, 0xc0, 0x57, 0x19, 0x6f, 0xce, 0x2a, + 0x9d, 0xb9, 0x07, 0x62, 0xaa, 0x7f, 0x54, 0x8c, 0xae, 0x49, 0x40, 0x6d, 0x76, 0xd4, 0x8f, 0x7c, + 0xb0, 0x03, 0x05, 0x97, 0x47, 0x0f, 0x7e, 0x3d, 0x0b, 0xf9, 0x01, 0x6f, 0x1f, 0x84, 0x1d, 0x16, + 0xb0, 0x53, 0xf7, 0xa8, 0x6f, 0x09, 0x5a, 0xf2, 0x4d, 0x58, 0x08, 0x85, 0x90, 0x06, 0x16, 0x0b, + 0x85, 0xbc, 0x62, 0x41, 0xaa, 0xc2, 0x62, 0x61, 0x3e, 0x8c, 0x27, 0x64, 0x1f, 0x16, 0x7a, 0x01, + 0x6b, 0x31, 0x9b, 0x71, 0xee, 0x07, 0xbc, 0x52, 0x94, 0x06, 0x9b, 0xa8, 0x3d, 0xc5, 0x24, 0x1e, + 0x9e, 0x66, 0xd7, 0xb7, 0x4f, 0xa2, 0x14, 0x3f, 0x23, 0xbd, 0x36, 0x2f, 0xd7, 0x54, 0x82, 0x27, + 0xab, 0x00, 0x8a, 0x44, 0xe6, 0xa1, 0x59, 0x69, 0x91, 0x39, 0xb9, 0x22, 0x9f, 0xee, 0xd7, 0xa3, + 0x6d, 0x51, 0x35, 0x55, 0x4a, 0xf2, 0x18, 0x55, 0x43, 0x95, 0x54, 0x46, 0x54, 0x52, 0x19, 0x47, + 0x51, 0x49, 0xb5, 0xb7, 0x28, 0xfc, 0xf5, 0xc9, 0x5f, 0xea, 0x9a, 0xba, 0x8b, 0x4a, 0x92, 0xd8, + 0x1e, 0x19, 0x9c, 0xe5, 0xff, 0x4c, 0x70, 0xce, 0xa5, 0x83, 0x53, 0x87, 0x45, 0x75, 0x06, 0x97, + 0xf6, 0x1b, 0x22, 0x40, 0x20, 0x61, 0x86, 0x07, 0xb4, 0x7f, 0x48, 0xf9, 0xb7, 0x8b, 0xe5, 0xe9, + 0xa5, 0x82, 0x55, 0x0e, 0xfb, 0x0d, 0xc7, 0x6b, 0xb1, 0xbe, 0x7e, 0x1b, 0x5f, 0x8f, 0x41, 0x28, + 0xc4, 0xa9, 0xbd, 0x45, 0x43, 0x1a, 0xdd, 0x47, 0x31, 0xd6, 0xff, 0x50, 0xc0, 0xea, 0x4e, 0x12, + 0xef, 0x09, 0xa9, 0x89, 0xd0, 0x09, 0xfb, 0x51, 0x82, 0x9d, 0x1c, 0x3a, 0x61, 0x9f, 0x3f, 0x87, + 0xd0, 0xf9, 0xbf, 0xd7, 0x2f, 0xe8, 0x75, 0xfd, 0x65, 0x2c, 0xb1, 0x93, 0x8e, 0x1b, 0xe3, 0xe8, + 0x9f, 0x15, 0xe0, 0x6a, 0x4c, 0xff, 0xbf, 0x9a, 0xa6, 0x87, 0x03, 0xa8, 0xf8, 0x5f, 0x08, 0xa0, + 0xfd, 0x67, 0x0c, 0xa0, 0x72, 0x14, 0x40, 0xc9, 0xd8, 0x49, 0x3a, 0xb7, 0x9c, 0x72, 0xae, 0xbe, + 0x9d, 0xbc, 0x71, 0xca, 0x11, 0x63, 0xfc, 0x76, 0x75, 0x50, 0xc4, 0x72, 0xf6, 0x1a, 0x63, 0x71, + 0x8b, 0xb7, 0x9c, 0x5e, 0x46, 0x11, 0xaf, 0x42, 0x59, 0x54, 0x34, 0x8d, 0x63, 0x86, 0x8f, 0xfb, + 0xde, 0xb5, 0x3f, 0x3f, 0xae, 0x5f, 0x55, 0xf6, 0xe3, 0xad, 0x13, 0xc3, 0xf1, 0x4d, 0x97, 0x86, + 0x1d, 0xe3, 0x0d, 0x2f, 0x14, 0xc5, 0xab, 0xe4, 0xd6, 0xeb, 0x58, 0xb6, 0x1f, 0x76, 0xfd, 0x26, + 0xed, 0x3e, 0x70, 0xbc, 0x43, 0xca, 0x1f, 0x06, 0xce, 0xa0, 0x66, 0xd6, 0x6d, 0xa8, 0xe5, 0x11, + 0xa0, 0xe2, 0x7b, 0xb0, 0xe8, 0x3a, 0x9e, 0x08, 0xd6, 0x46, 0x4f, 0x6c, 0xa0, 0xf6, 0x55, 0x61, + 0x9c, 0x7c, 0x04, 0xf3, 0x6e, 0x2c, 0x6a, 0xf7, 0xd7, 0x57, 0x60, 0x46, 0x6a, 0x21, 0x3f, 0xd5, + 0xa0, 0x84, 0x9d, 0x03, 0x59, 0xcf, 0x3a, 0x7f, 0x44, 0x6b, 0x58, 0xdd, 0x98, 0x44, 0xa6, 0x70, + 0xea, 0x77, 0x7e, 0xfc, 0xc7, 0xbf, 0xfd, 0x62, 0x7a, 0x9d, 0xdc, 0x30, 0x33, 0xad, 0x3a, 0x76, + 0x0f, 0xe6, 0x7b, 0x18, 0xd8, 0x8f, 0xc8, 0x2f, 0x35, 0x58, 0x4c, 0x35, 0x68, 0xe4, 0x4e, 0x8e, + 0x9a, 0x51, 0x8d, 0x60, 0x75, 0xfb, 0x62, 0xc4, 0x88, 0x6c, 0x57, 0x22, 0xdb, 0x26, 0xb7, 0xb3, + 0xc8, 0xa2, 0x5e, 0x30, 0x03, 0xf0, 0x77, 0x1a, 0x2c, 0x0d, 0xf7, 0x5a, 0xc4, 0xc8, 0x51, 0x9b, + 0xd3, 0xe2, 0x55, 0xcd, 0x0b, 0xd3, 0x23, 0xd2, 0xbb, 0x12, 0xe9, 0xab, 0x64, 0x37, 0x8b, 0xf4, + 0x2c, 0xe2, 0x89, 0xc1, 0x26, 0xdb, 0xc7, 0x47, 0xe4, 0x03, 0x0d, 0x4a, 0xd8, 0x55, 0xe5, 0xba, + 0x36, 0xdd, 0xb0, 0xe5, 0xba, 0x76, 0xa8, 0x39, 0xd3, 0xb7, 0x25, 0xac, 0x0d, 0x72, 0x33, 0x0b, + 0x0b, 0xbb, 0x34, 0x9e, 0x30, 0xdd, 0xc7, 0x1a, 0x94, 0xb0, 0xbf, 0xca, 0x05, 0x92, 0x6e, 0xe6, + 0x72, 0x81, 0x0c, 0xb5, 0x69, 0xfa, 0x8e, 0x04, 0x72, 0x87, 0xdc, 0xca, 0x02, 0xe1, 0x8a, 0x34, + 0xc6, 0x61, 0xbe, 0x77, 0xc2, 0xce, 0x1f, 0x91, 0x77, 0xa1, 0x28, 0xda, 0x30, 0xa2, 0xe7, 0x86, + 0xcc, 0xa0, 0xb7, 0xab, 0xde, 0x18, 0x4b, 0x83, 0x18, 0x6e, 0x49, 0x0c, 0x37, 0xc8, 0xf5, 0x51, + 0xd1, 0xd4, 0x4a, 0x59, 0xe2, 0x87, 0x30, 0xab, 0x3a, 0x11, 0x72, 0x33, 0x47, 0x72, 0xaa, 0xe1, + 0xa9, 0xae, 0x4f, 0xa0, 0x42, 0x04, 0x6b, 0x12, 0x41, 0x95, 0x54, 0xb2, 0x08, 0x54, 0x97, 0x43, + 0xfa, 0x50, 0xc2, 0x96, 0x81, 0x8c, 0xa8, 0xa6, 0xd3, 0xdd, 0x44, 0x75, 0x73, 0x52, 0x05, 0x12, + 0xe9, 0xd5, 0xa5, 0xde, 0x15, 0x52, 0xcd, 0xea, 0x65, 0x61, 0xa7, 0x61, 0x0b, 0x75, 0x3f, 0x82, + 0xf9, 0x44, 0x11, 0x7e, 0x01, 0xed, 0x23, 0xce, 0x3c, 0xa2, 0x8a, 0xd7, 0x37, 0xa4, 0xee, 0x35, + 0x52, 0x1b, 0xa1, 0x1b, 0xc9, 0x45, 0x8a, 0x24, 0xef, 0x43, 0x09, 0xab, 0xb3, 0xdc, 0xd8, 0x4b, + 0x17, 0xf2, 0xb9, 0xb1, 0x37, 0x54, 0xe4, 0x8d, 0x3b, 0xbd, 0x7a, 0x59, 0xc3, 0x3e, 0xf9, 0x50, + 0x03, 0x88, 0xcb, 0x06, 0xb2, 0x35, 0x4e, 0x74, 0xb2, 0x24, 0xac, 0xde, 0xba, 0x00, 0x25, 0xe2, + 0x58, 0x97, 0x38, 0xea, 0x64, 0x35, 0x0f, 0x87, 0x7c, 0x2b, 0xc9, 0x4f, 0x34, 0x98, 0x1b, 0x3c, + 0x84, 0x64, 0x73, 0x9c, 0xfc, 0xa4, 0x3b, 0xb6, 0x26, 0x13, 0x22, 0x8e, 0x9b, 0x12, 0x47, 0x8d, + 0xac, 0xe4, 0xe1, 0x90, 0xf1, 0xf0, 0xbe, 0x48, 0x4a, 0xf2, 0x2d, 0x1c, 0x93, 0x94, 0x92, 0x0f, + 0xf0, 0x98, 0xa4, 0x94, 0x7a, 0x90, 0xc7, 0xf9, 0x23, 0x7a, 0xa8, 0xc5, 0x05, 0xc4, 0xea, 0xe5, + 0x66, 0xee, 0xd5, 0x4e, 0x7c, 0xdf, 0xcd, 0xbd, 0x80, 0xe9, 0xef, 0xbd, 0xe3, 0x2e, 0xa0, 0x2a, + 0xaf, 0xc8, 0xcf, 0x35, 0x80, 0xf8, 0xab, 0x6b, 0x6e, 0x20, 0x64, 0xbe, 0xfc, 0xe6, 0x06, 0x42, + 0xf6, 0x7b, 0xaf, 0x6e, 0x48, 0x14, 0x5b, 0x64, 0x63, 0x44, 0x1a, 0x18, 0x50, 0x27, 0xb2, 0xd1, + 0xaf, 0x34, 0xb8, 0x92, 0x29, 0x33, 0x48, 0xde, 0x1b, 0x95, 0x57, 0xb1, 0x54, 0x5f, 0xb9, 0x38, + 0x03, 0x02, 0xdd, 0x94, 0x40, 0xaf, 0x93, 0x7a, 0x16, 0x68, 0xaa, 0xb2, 0xd9, 0xbb, 0xfb, 0xd9, + 0x93, 0x9a, 0xf6, 0xf9, 0x93, 0x9a, 0xf6, 0xd7, 0x27, 0x35, 0xed, 0x93, 0xa7, 0xb5, 0xa9, 0xcf, + 0x9f, 0xd6, 0xa6, 0xfe, 0xf4, 0xb4, 0x36, 0xf5, 0xfd, 0xb5, 0x6c, 0xfd, 0x2b, 0x84, 0xf4, 0x85, + 0x18, 0x59, 0xfd, 0x36, 0x67, 0x65, 0x01, 0xf9, 0xc5, 0x7f, 0x05, 0x00, 0x00, 0xff, 0xff, 0x8d, + 0x3d, 0x89, 0x4f, 0xb4, 0x18, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -2810,16 +2800,6 @@ func (m *QueryPrecompileResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) _ = i var l int _ = l - if m.IsStatic { - i-- - if m.IsStatic { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x10 - } if m.IsPrecompile { i-- if m.IsPrecompile { @@ -4102,9 +4082,6 @@ func (m *QueryPrecompileResponse) Size() (n int) { if m.IsPrecompile { n += 2 } - if m.IsStatic { - n += 2 - } return n } @@ -4905,26 +4882,6 @@ func (m *QueryPrecompileResponse) Unmarshal(dAtA []byte) error { } } m.IsPrecompile = bool(v != 0) - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field IsStatic", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.IsStatic = bool(v != 0) default: iNdEx = preIndex skippy, err := skipQuery(dAtA[iNdEx:]) From 6a67161c34edd83a6a1967c73283e6568f3d10e6 Mon Sep 17 00:00:00 2001 From: mmsqe Date: Tue, 21 Oct 2025 09:07:17 +0800 Subject: [PATCH 6/8] override precompiles --- x/vm/keeper/precompiles.go | 20 -------------------- x/vm/keeper/state_transition.go | 12 +++--------- 2 files changed, 3 insertions(+), 29 deletions(-) diff --git a/x/vm/keeper/precompiles.go b/x/vm/keeper/precompiles.go index 2813afedb..10db8b57f 100644 --- a/x/vm/keeper/precompiles.go +++ b/x/vm/keeper/precompiles.go @@ -71,23 +71,3 @@ func (k *Keeper) GetPrecompilesCallHook(ctx sdktypes.Context) types.CallHook { return nil } } - -// GetPrecompileRecipientCallHook returns a closure that can be used to instantiate the EVM with a specific -// recipient from precompiles. -func (k *Keeper) GetPrecompileRecipientCallHook(ctx sdktypes.Context) types.CallHook { - return func(evm *vm.EVM, _ common.Address, recipient common.Address) error { - // Check if the recipient is a precompile contract and if so, load the precompile instance - _, found, err := k.GetPrecompileInstance(ctx, recipient) - if err != nil { - return err - } - - // If the precompile instance is created, we have to update the EVM with - // only the recipient precompile and add it's address to the access list. - if found { - evm.StateDB.AddAddressToAccessList(recipient) - } - - return nil - } -} diff --git a/x/vm/keeper/state_transition.go b/x/vm/keeper/state_transition.go index eb8975cf2..d19c9a657 100644 --- a/x/vm/keeper/state_transition.go +++ b/x/vm/keeper/state_transition.go @@ -73,15 +73,9 @@ func (k *Keeper) NewEVMWithOverridePrecompiles( evmHooks.AddCallHooks( accessControl.GetCallHook(signer), ) - if overridePrecompiles { - evmHooks.AddCallHooks( - k.GetPrecompilesCallHook(ctx), - ) - } else { - evmHooks.AddCallHooks( - k.GetPrecompileRecipientCallHook(ctx), - ) - } + evmHooks.AddCallHooks( + k.GetPrecompilesCallHook(ctx), + ) return vm.NewEVMWithHooks(evmHooks, blockCtx, txCtx, stateDB, ethCfg, vmConfig) } From b5a55d67ad13faf5979063c2f2db05235ee67629 Mon Sep 17 00:00:00 2001 From: mmsqe Date: Tue, 21 Oct 2025 21:30:30 +0800 Subject: [PATCH 7/8] handle static --- rpc/types/types.go | 14 ++++++++++---- x/vm/keeper/precompiles.go | 33 +++++++++++++++++++++++++++++++++ x/vm/keeper/state_transition.go | 14 ++++++++++---- 3 files changed, 53 insertions(+), 8 deletions(-) diff --git a/rpc/types/types.go b/rpc/types/types.go index eb4c207fa..08cd46cf5 100644 --- a/rpc/types/types.go +++ b/rpc/types/types.go @@ -224,10 +224,16 @@ func ParseOverrides(overrides *json.RawMessage, isPrecompile bool) (*StateOverri // extractFromOverrideAccount extracts cosmos overrides from state/stateDiff fields func extractFromOverrideAccount(overrideAccount map[string]interface{}) []evmtypes.StoreStateDiff { for stateType, stateValue := range overrideAccount { - if (stateType == "state" || stateType == "stateDiff") && stateValue != nil { - if encodedStr, ok := stateValue.(string); ok { - if cosmosOverrides := decodeCosmosOverrides(encodedStr); cosmosOverrides != nil { - return cosmosOverrides + if stateValue != nil { + if stateType == "" { + return make([]evmtypes.StoreStateDiff, 0) + } + + if stateType == "state" || stateType == "stateDiff" { + if encodedStr, ok := stateValue.(string); ok { + if cosmosOverrides := decodeCosmosOverrides(encodedStr); cosmosOverrides != nil { + return cosmosOverrides + } } } } diff --git a/x/vm/keeper/precompiles.go b/x/vm/keeper/precompiles.go index 10db8b57f..d33e55942 100644 --- a/x/vm/keeper/precompiles.go +++ b/x/vm/keeper/precompiles.go @@ -71,3 +71,36 @@ func (k *Keeper) GetPrecompilesCallHook(ctx sdktypes.Context) types.CallHook { return nil } } + +// GetPrecompileRecipientCallHook returns a closure that can be used to instantiate the EVM with a specific +// recipient from precompiles. +func (k *Keeper) GetPrecompileRecipientCallHook(ctx sdktypes.Context) types.CallHook { + return func(evm *vm.EVM, _ common.Address, recipient common.Address) error { + // Check if the EVM already has precompiles set (including moved precompiles from overrides) + activePrecompiles := evm.ActivePrecompiles() + if len(activePrecompiles) > 0 { + for _, addr := range activePrecompiles { + if addr == recipient { + evm.StateDB.AddAddressToAccessList(recipient) + return nil + } + } + return nil + } + + // Check if the recipient is a precompile contract and if so, load the precompile instance + precompiles, found, err := k.GetPrecompileInstance(ctx, recipient) + if err != nil { + return err + } + + // If the precompile instance is created, we have to update the EVM with + // only the recipient precompile and add it's address to the access list. + if found { + evm.WithPrecompiles(precompiles.Map) + evm.StateDB.AddAddressToAccessList(recipient) + } + + return nil + } +} diff --git a/x/vm/keeper/state_transition.go b/x/vm/keeper/state_transition.go index d19c9a657..05160c85f 100644 --- a/x/vm/keeper/state_transition.go +++ b/x/vm/keeper/state_transition.go @@ -39,7 +39,7 @@ func (k *Keeper) NewEVMWithOverridePrecompiles( cfg *statedb.EVMConfig, tracer *tracing.Hooks, stateDB vm.StateDB, - overridePrecompiles bool, + noOverridePrecompiles bool, ) *vm.EVM { ctx = k.SetConsensusParamsInCtx(ctx) blockCtx := vm.BlockContext{ @@ -73,9 +73,15 @@ func (k *Keeper) NewEVMWithOverridePrecompiles( evmHooks.AddCallHooks( accessControl.GetCallHook(signer), ) - evmHooks.AddCallHooks( - k.GetPrecompilesCallHook(ctx), - ) + if noOverridePrecompiles { + evmHooks.AddCallHooks( + k.GetPrecompilesCallHook(ctx), + ) + } else { + evmHooks.AddCallHooks( + k.GetPrecompileRecipientCallHook(ctx), + ) + } return vm.NewEVMWithHooks(evmHooks, blockCtx, txCtx, stateDB, ethCfg, vmConfig) } From d9223b2766022c405bb5016acca6efff371726d0 Mon Sep 17 00:00:00 2001 From: mmsqe Date: Wed, 22 Oct 2025 00:28:30 +0800 Subject: [PATCH 8/8] cleanup --- rpc/types/types_test.go | 35 ++++++++++++++++++++++----------- x/vm/keeper/precompiles.go | 25 ++++++----------------- x/vm/keeper/state_transition.go | 2 +- 3 files changed, 30 insertions(+), 32 deletions(-) diff --git a/rpc/types/types_test.go b/rpc/types/types_test.go index a0e8cb3fb..96e178417 100644 --- a/rpc/types/types_test.go +++ b/rpc/types/types_test.go @@ -120,7 +120,7 @@ func TestParseOverrides(t *testing.T) { expectedEVMOverrides bool expectedCosmosOverrides int expectError bool - isDynamicPrecompile bool + isPrecompile bool }{ { name: "Standard EVM overrides (backward compatibility)", @@ -133,7 +133,7 @@ func TestParseOverrides(t *testing.T) { }`, expectedEVMOverrides: true, expectedCosmosOverrides: 0, - isDynamicPrecompile: false, + isPrecompile: false, }, { name: "Dynamic precompile with aligned cosmos overrides in state field", @@ -144,7 +144,7 @@ func TestParseOverrides(t *testing.T) { }`, expectedEVMOverrides: false, expectedCosmosOverrides: 1, - isDynamicPrecompile: true, + isPrecompile: true, }, { name: "Dynamic precompile with aligned cosmos overrides in stateDiff field", @@ -155,20 +155,20 @@ func TestParseOverrides(t *testing.T) { }`, expectedEVMOverrides: false, expectedCosmosOverrides: 1, - isDynamicPrecompile: true, + isPrecompile: true, }, { name: "Empty overrides", input: `{}`, expectedEVMOverrides: false, expectedCosmosOverrides: 0, - isDynamicPrecompile: false, + isPrecompile: false, }, { - name: "Invalid JSON", - input: `{invalid json}`, - expectError: true, - isDynamicPrecompile: false, + name: "Invalid JSON", + input: `{invalid json}`, + expectError: true, + isPrecompile: false, }, { name: "Nil input", @@ -176,7 +176,18 @@ func TestParseOverrides(t *testing.T) { expectedEVMOverrides: false, expectedCosmosOverrides: 0, expectError: false, - isDynamicPrecompile: false, + isPrecompile: false, + }, + { + name: "Dynamic precompile with empty stateType returns empty cosmos overrides", + input: `{ + "0x1234567890abcdef1234567890abcdef12345678": { + "": "some_value" + } + }`, + expectedEVMOverrides: false, + expectedCosmosOverrides: 0, + isPrecompile: true, }, } @@ -187,7 +198,7 @@ func TestParseOverrides(t *testing.T) { msg := json.RawMessage(tc.input) rawMessage = &msg } - evmOverrides, cosmosOverrides, err := rpc.ParseOverrides(rawMessage, tc.isDynamicPrecompile) + evmOverrides, cosmosOverrides, err := rpc.ParseOverrides(rawMessage, tc.isPrecompile) if tc.expectError { require.Error(t, err) return @@ -203,7 +214,7 @@ func TestParseOverrides(t *testing.T) { require.NotNil(t, cosmosOverrides) require.Len(t, cosmosOverrides, tc.expectedCosmosOverrides) } else { - require.Nil(t, cosmosOverrides) + require.Len(t, cosmosOverrides, 0) } }) } diff --git a/x/vm/keeper/precompiles.go b/x/vm/keeper/precompiles.go index d33e55942..5e269f444 100644 --- a/x/vm/keeper/precompiles.go +++ b/x/vm/keeper/precompiles.go @@ -72,10 +72,11 @@ func (k *Keeper) GetPrecompilesCallHook(ctx sdktypes.Context) types.CallHook { } } -// GetPrecompileRecipientCallHook returns a closure that can be used to instantiate the EVM with a specific -// recipient from precompiles. -func (k *Keeper) GetPrecompileRecipientCallHook(ctx sdktypes.Context) types.CallHook { - return func(evm *vm.EVM, _ common.Address, recipient common.Address) error { +// GetPrecompilesCallHookWithOverrides returns a closure that can be used to instantiate the EVM with a specific +// precompile instance, with support for state overrides including moved precompiles. +func (k *Keeper) GetPrecompilesCallHookWithOverrides(ctx sdktypes.Context) types.CallHook { + baseHook := k.GetPrecompilesCallHook(ctx) + return func(evm *vm.EVM, caller common.Address, recipient common.Address) error { // Check if the EVM already has precompiles set (including moved precompiles from overrides) activePrecompiles := evm.ActivePrecompiles() if len(activePrecompiles) > 0 { @@ -87,20 +88,6 @@ func (k *Keeper) GetPrecompileRecipientCallHook(ctx sdktypes.Context) types.Call } return nil } - - // Check if the recipient is a precompile contract and if so, load the precompile instance - precompiles, found, err := k.GetPrecompileInstance(ctx, recipient) - if err != nil { - return err - } - - // If the precompile instance is created, we have to update the EVM with - // only the recipient precompile and add it's address to the access list. - if found { - evm.WithPrecompiles(precompiles.Map) - evm.StateDB.AddAddressToAccessList(recipient) - } - - return nil + return baseHook(evm, caller, recipient) } } diff --git a/x/vm/keeper/state_transition.go b/x/vm/keeper/state_transition.go index 05160c85f..46b908c7f 100644 --- a/x/vm/keeper/state_transition.go +++ b/x/vm/keeper/state_transition.go @@ -79,7 +79,7 @@ func (k *Keeper) NewEVMWithOverridePrecompiles( ) } else { evmHooks.AddCallHooks( - k.GetPrecompileRecipientCallHook(ctx), + k.GetPrecompilesCallHookWithOverrides(ctx), ) } return vm.NewEVMWithHooks(evmHooks, blockCtx, txCtx, stateDB, ethCfg, vmConfig)