// Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.27.1 // protoc (unknown) // source: node/v1/node.proto package nodev1 import ( v1 "github.com/certusone/wormhole/node/pkg/proto/gossip/v1" protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" reflect "reflect" sync "sync" ) const ( // Verify that this generated code is sufficiently up-to-date. _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) // Verify that runtime/protoimpl is sufficiently up-to-date. _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) type ModificationKind int32 const ( ModificationKind_MODIFICATION_KIND_UNSPECIFIED ModificationKind = 0 ModificationKind_MODIFICATION_KIND_ADD ModificationKind = 1 ModificationKind_MODIFICATION_KIND_SUBTRACT ModificationKind = 2 ) // Enum value maps for ModificationKind. var ( ModificationKind_name = map[int32]string{ 0: "MODIFICATION_KIND_UNSPECIFIED", 1: "MODIFICATION_KIND_ADD", 2: "MODIFICATION_KIND_SUBTRACT", } ModificationKind_value = map[string]int32{ "MODIFICATION_KIND_UNSPECIFIED": 0, "MODIFICATION_KIND_ADD": 1, "MODIFICATION_KIND_SUBTRACT": 2, } ) func (x ModificationKind) Enum() *ModificationKind { p := new(ModificationKind) *p = x return p } func (x ModificationKind) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (ModificationKind) Descriptor() protoreflect.EnumDescriptor { return file_node_v1_node_proto_enumTypes[0].Descriptor() } func (ModificationKind) Type() protoreflect.EnumType { return &file_node_v1_node_proto_enumTypes[0] } func (x ModificationKind) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use ModificationKind.Descriptor instead. func (ModificationKind) EnumDescriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{0} } type WormchainWasmInstantiateAllowlistAction int32 const ( WormchainWasmInstantiateAllowlistAction_WORMCHAIN_WASM_INSTANTIATE_ALLOWLIST_ACTION_UNSPECIFIED WormchainWasmInstantiateAllowlistAction = 0 WormchainWasmInstantiateAllowlistAction_WORMCHAIN_WASM_INSTANTIATE_ALLOWLIST_ACTION_ADD WormchainWasmInstantiateAllowlistAction = 1 WormchainWasmInstantiateAllowlistAction_WORMCHAIN_WASM_INSTANTIATE_ALLOWLIST_ACTION_DELETE WormchainWasmInstantiateAllowlistAction = 2 ) // Enum value maps for WormchainWasmInstantiateAllowlistAction. var ( WormchainWasmInstantiateAllowlistAction_name = map[int32]string{ 0: "WORMCHAIN_WASM_INSTANTIATE_ALLOWLIST_ACTION_UNSPECIFIED", 1: "WORMCHAIN_WASM_INSTANTIATE_ALLOWLIST_ACTION_ADD", 2: "WORMCHAIN_WASM_INSTANTIATE_ALLOWLIST_ACTION_DELETE", } WormchainWasmInstantiateAllowlistAction_value = map[string]int32{ "WORMCHAIN_WASM_INSTANTIATE_ALLOWLIST_ACTION_UNSPECIFIED": 0, "WORMCHAIN_WASM_INSTANTIATE_ALLOWLIST_ACTION_ADD": 1, "WORMCHAIN_WASM_INSTANTIATE_ALLOWLIST_ACTION_DELETE": 2, } ) func (x WormchainWasmInstantiateAllowlistAction) Enum() *WormchainWasmInstantiateAllowlistAction { p := new(WormchainWasmInstantiateAllowlistAction) *p = x return p } func (x WormchainWasmInstantiateAllowlistAction) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (WormchainWasmInstantiateAllowlistAction) Descriptor() protoreflect.EnumDescriptor { return file_node_v1_node_proto_enumTypes[1].Descriptor() } func (WormchainWasmInstantiateAllowlistAction) Type() protoreflect.EnumType { return &file_node_v1_node_proto_enumTypes[1] } func (x WormchainWasmInstantiateAllowlistAction) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use WormchainWasmInstantiateAllowlistAction.Descriptor instead. func (WormchainWasmInstantiateAllowlistAction) EnumDescriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{1} } type IbcUpdateChannelChainModule int32 const ( IbcUpdateChannelChainModule_IBC_UPDATE_CHANNEL_CHAIN_MODULE_UNSPECIFIED IbcUpdateChannelChainModule = 0 IbcUpdateChannelChainModule_IBC_UPDATE_CHANNEL_CHAIN_MODULE_RECEIVER IbcUpdateChannelChainModule = 1 IbcUpdateChannelChainModule_IBC_UPDATE_CHANNEL_CHAIN_MODULE_TRANSLATOR IbcUpdateChannelChainModule = 2 ) // Enum value maps for IbcUpdateChannelChainModule. var ( IbcUpdateChannelChainModule_name = map[int32]string{ 0: "IBC_UPDATE_CHANNEL_CHAIN_MODULE_UNSPECIFIED", 1: "IBC_UPDATE_CHANNEL_CHAIN_MODULE_RECEIVER", 2: "IBC_UPDATE_CHANNEL_CHAIN_MODULE_TRANSLATOR", } IbcUpdateChannelChainModule_value = map[string]int32{ "IBC_UPDATE_CHANNEL_CHAIN_MODULE_UNSPECIFIED": 0, "IBC_UPDATE_CHANNEL_CHAIN_MODULE_RECEIVER": 1, "IBC_UPDATE_CHANNEL_CHAIN_MODULE_TRANSLATOR": 2, } ) func (x IbcUpdateChannelChainModule) Enum() *IbcUpdateChannelChainModule { p := new(IbcUpdateChannelChainModule) *p = x return p } func (x IbcUpdateChannelChainModule) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (IbcUpdateChannelChainModule) Descriptor() protoreflect.EnumDescriptor { return file_node_v1_node_proto_enumTypes[2].Descriptor() } func (IbcUpdateChannelChainModule) Type() protoreflect.EnumType { return &file_node_v1_node_proto_enumTypes[2] } func (x IbcUpdateChannelChainModule) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use IbcUpdateChannelChainModule.Descriptor instead. func (IbcUpdateChannelChainModule) EnumDescriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{2} } type InjectGovernanceVAARequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Index of the current guardian set. CurrentSetIndex uint32 `protobuf:"varint,1,opt,name=current_set_index,json=currentSetIndex,proto3" json:"current_set_index,omitempty"` // List of governance VAA messages to inject. Messages []*GovernanceMessage `protobuf:"bytes,2,rep,name=messages,proto3" json:"messages,omitempty"` // UNIX wall time in seconds Timestamp uint32 `protobuf:"varint,3,opt,name=timestamp,proto3" json:"timestamp,omitempty"` } func (x *InjectGovernanceVAARequest) Reset() { *x = InjectGovernanceVAARequest{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *InjectGovernanceVAARequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*InjectGovernanceVAARequest) ProtoMessage() {} func (x *InjectGovernanceVAARequest) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[0] 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) } // Deprecated: Use InjectGovernanceVAARequest.ProtoReflect.Descriptor instead. func (*InjectGovernanceVAARequest) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{0} } func (x *InjectGovernanceVAARequest) GetCurrentSetIndex() uint32 { if x != nil { return x.CurrentSetIndex } return 0 } func (x *InjectGovernanceVAARequest) GetMessages() []*GovernanceMessage { if x != nil { return x.Messages } return nil } func (x *InjectGovernanceVAARequest) GetTimestamp() uint32 { if x != nil { return x.Timestamp } return 0 } type GovernanceMessage struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Sequence number. This is critical for replay protection - make sure the sequence number // is unique for every new manually injected governance VAA. Sequences are tracked // by emitter, and manually injected VAAs all use a single hardcoded emitter. // // We use random sequence numbers for the manual emitter. Sequence uint64 `protobuf:"varint,2,opt,name=sequence,proto3" json:"sequence,omitempty"` // Random nonce for disambiguation. Must be identical across all nodes. Nonce uint32 `protobuf:"varint,3,opt,name=nonce,proto3" json:"nonce,omitempty"` // Types that are assignable to Payload: // // *GovernanceMessage_GuardianSet // *GovernanceMessage_ContractUpgrade // *GovernanceMessage_BridgeRegisterChain // *GovernanceMessage_BridgeContractUpgrade // *GovernanceMessage_RecoverChainId // *GovernanceMessage_WormchainStoreCode // *GovernanceMessage_WormchainInstantiateContract // *GovernanceMessage_WormchainMigrateContract // *GovernanceMessage_WormchainWasmInstantiateAllowlist // *GovernanceMessage_GatewayScheduleUpgrade // *GovernanceMessage_GatewayCancelUpgrade // *GovernanceMessage_GatewayIbcComposabilityMwSetContract // *GovernanceMessage_AccountantModifyBalance // *GovernanceMessage_CircleIntegrationUpdateWormholeFinality // *GovernanceMessage_CircleIntegrationRegisterEmitterAndDomain // *GovernanceMessage_CircleIntegrationUpgradeContractImplementation // *GovernanceMessage_IbcUpdateChannelChain // *GovernanceMessage_WormholeRelayerSetDefaultDeliveryProvider // *GovernanceMessage_EvmCall // *GovernanceMessage_SolanaCall Payload isGovernanceMessage_Payload `protobuf_oneof:"payload"` } func (x *GovernanceMessage) Reset() { *x = GovernanceMessage{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GovernanceMessage) String() string { return protoimpl.X.MessageStringOf(x) } func (*GovernanceMessage) ProtoMessage() {} func (x *GovernanceMessage) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[1] 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) } // Deprecated: Use GovernanceMessage.ProtoReflect.Descriptor instead. func (*GovernanceMessage) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{1} } func (x *GovernanceMessage) GetSequence() uint64 { if x != nil { return x.Sequence } return 0 } func (x *GovernanceMessage) GetNonce() uint32 { if x != nil { return x.Nonce } return 0 } func (m *GovernanceMessage) GetPayload() isGovernanceMessage_Payload { if m != nil { return m.Payload } return nil } func (x *GovernanceMessage) GetGuardianSet() *GuardianSetUpdate { if x, ok := x.GetPayload().(*GovernanceMessage_GuardianSet); ok { return x.GuardianSet } return nil } func (x *GovernanceMessage) GetContractUpgrade() *ContractUpgrade { if x, ok := x.GetPayload().(*GovernanceMessage_ContractUpgrade); ok { return x.ContractUpgrade } return nil } func (x *GovernanceMessage) GetBridgeRegisterChain() *BridgeRegisterChain { if x, ok := x.GetPayload().(*GovernanceMessage_BridgeRegisterChain); ok { return x.BridgeRegisterChain } return nil } func (x *GovernanceMessage) GetBridgeContractUpgrade() *BridgeUpgradeContract { if x, ok := x.GetPayload().(*GovernanceMessage_BridgeContractUpgrade); ok { return x.BridgeContractUpgrade } return nil } func (x *GovernanceMessage) GetRecoverChainId() *RecoverChainId { if x, ok := x.GetPayload().(*GovernanceMessage_RecoverChainId); ok { return x.RecoverChainId } return nil } func (x *GovernanceMessage) GetWormchainStoreCode() *WormchainStoreCode { if x, ok := x.GetPayload().(*GovernanceMessage_WormchainStoreCode); ok { return x.WormchainStoreCode } return nil } func (x *GovernanceMessage) GetWormchainInstantiateContract() *WormchainInstantiateContract { if x, ok := x.GetPayload().(*GovernanceMessage_WormchainInstantiateContract); ok { return x.WormchainInstantiateContract } return nil } func (x *GovernanceMessage) GetWormchainMigrateContract() *WormchainMigrateContract { if x, ok := x.GetPayload().(*GovernanceMessage_WormchainMigrateContract); ok { return x.WormchainMigrateContract } return nil } func (x *GovernanceMessage) GetWormchainWasmInstantiateAllowlist() *WormchainWasmInstantiateAllowlist { if x, ok := x.GetPayload().(*GovernanceMessage_WormchainWasmInstantiateAllowlist); ok { return x.WormchainWasmInstantiateAllowlist } return nil } func (x *GovernanceMessage) GetGatewayScheduleUpgrade() *GatewayScheduleUpgrade { if x, ok := x.GetPayload().(*GovernanceMessage_GatewayScheduleUpgrade); ok { return x.GatewayScheduleUpgrade } return nil } func (x *GovernanceMessage) GetGatewayCancelUpgrade() *GatewayCancelUpgrade { if x, ok := x.GetPayload().(*GovernanceMessage_GatewayCancelUpgrade); ok { return x.GatewayCancelUpgrade } return nil } func (x *GovernanceMessage) GetGatewayIbcComposabilityMwSetContract() *GatewayIbcComposabilityMwSetContract { if x, ok := x.GetPayload().(*GovernanceMessage_GatewayIbcComposabilityMwSetContract); ok { return x.GatewayIbcComposabilityMwSetContract } return nil } func (x *GovernanceMessage) GetAccountantModifyBalance() *AccountantModifyBalance { if x, ok := x.GetPayload().(*GovernanceMessage_AccountantModifyBalance); ok { return x.AccountantModifyBalance } return nil } func (x *GovernanceMessage) GetCircleIntegrationUpdateWormholeFinality() *CircleIntegrationUpdateWormholeFinality { if x, ok := x.GetPayload().(*GovernanceMessage_CircleIntegrationUpdateWormholeFinality); ok { return x.CircleIntegrationUpdateWormholeFinality } return nil } func (x *GovernanceMessage) GetCircleIntegrationRegisterEmitterAndDomain() *CircleIntegrationRegisterEmitterAndDomain { if x, ok := x.GetPayload().(*GovernanceMessage_CircleIntegrationRegisterEmitterAndDomain); ok { return x.CircleIntegrationRegisterEmitterAndDomain } return nil } func (x *GovernanceMessage) GetCircleIntegrationUpgradeContractImplementation() *CircleIntegrationUpgradeContractImplementation { if x, ok := x.GetPayload().(*GovernanceMessage_CircleIntegrationUpgradeContractImplementation); ok { return x.CircleIntegrationUpgradeContractImplementation } return nil } func (x *GovernanceMessage) GetIbcUpdateChannelChain() *IbcUpdateChannelChain { if x, ok := x.GetPayload().(*GovernanceMessage_IbcUpdateChannelChain); ok { return x.IbcUpdateChannelChain } return nil } func (x *GovernanceMessage) GetWormholeRelayerSetDefaultDeliveryProvider() *WormholeRelayerSetDefaultDeliveryProvider { if x, ok := x.GetPayload().(*GovernanceMessage_WormholeRelayerSetDefaultDeliveryProvider); ok { return x.WormholeRelayerSetDefaultDeliveryProvider } return nil } func (x *GovernanceMessage) GetEvmCall() *EvmCall { if x, ok := x.GetPayload().(*GovernanceMessage_EvmCall); ok { return x.EvmCall } return nil } func (x *GovernanceMessage) GetSolanaCall() *SolanaCall { if x, ok := x.GetPayload().(*GovernanceMessage_SolanaCall); ok { return x.SolanaCall } return nil } type isGovernanceMessage_Payload interface { isGovernanceMessage_Payload() } type GovernanceMessage_GuardianSet struct { GuardianSet *GuardianSetUpdate `protobuf:"bytes,10,opt,name=guardian_set,json=guardianSet,proto3,oneof"` } type GovernanceMessage_ContractUpgrade struct { ContractUpgrade *ContractUpgrade `protobuf:"bytes,11,opt,name=contract_upgrade,json=contractUpgrade,proto3,oneof"` } type GovernanceMessage_BridgeRegisterChain struct { BridgeRegisterChain *BridgeRegisterChain `protobuf:"bytes,12,opt,name=bridge_register_chain,json=bridgeRegisterChain,proto3,oneof"` } type GovernanceMessage_BridgeContractUpgrade struct { BridgeContractUpgrade *BridgeUpgradeContract `protobuf:"bytes,13,opt,name=bridge_contract_upgrade,json=bridgeContractUpgrade,proto3,oneof"` } type GovernanceMessage_RecoverChainId struct { // Core, Token bridge, and NFT module RecoverChainId *RecoverChainId `protobuf:"bytes,27,opt,name=recover_chain_id,json=recoverChainId,proto3,oneof"` } type GovernanceMessage_WormchainStoreCode struct { WormchainStoreCode *WormchainStoreCode `protobuf:"bytes,14,opt,name=wormchain_store_code,json=wormchainStoreCode,proto3,oneof"` } type GovernanceMessage_WormchainInstantiateContract struct { WormchainInstantiateContract *WormchainInstantiateContract `protobuf:"bytes,15,opt,name=wormchain_instantiate_contract,json=wormchainInstantiateContract,proto3,oneof"` } type GovernanceMessage_WormchainMigrateContract struct { WormchainMigrateContract *WormchainMigrateContract `protobuf:"bytes,16,opt,name=wormchain_migrate_contract,json=wormchainMigrateContract,proto3,oneof"` } type GovernanceMessage_WormchainWasmInstantiateAllowlist struct { WormchainWasmInstantiateAllowlist *WormchainWasmInstantiateAllowlist `protobuf:"bytes,23,opt,name=wormchain_wasm_instantiate_allowlist,json=wormchainWasmInstantiateAllowlist,proto3,oneof"` } type GovernanceMessage_GatewayScheduleUpgrade struct { // Gateway GatewayScheduleUpgrade *GatewayScheduleUpgrade `protobuf:"bytes,24,opt,name=gateway_schedule_upgrade,json=gatewayScheduleUpgrade,proto3,oneof"` } type GovernanceMessage_GatewayCancelUpgrade struct { GatewayCancelUpgrade *GatewayCancelUpgrade `protobuf:"bytes,25,opt,name=gateway_cancel_upgrade,json=gatewayCancelUpgrade,proto3,oneof"` } type GovernanceMessage_GatewayIbcComposabilityMwSetContract struct { GatewayIbcComposabilityMwSetContract *GatewayIbcComposabilityMwSetContract `protobuf:"bytes,26,opt,name=gateway_ibc_composability_mw_set_contract,json=gatewayIbcComposabilityMwSetContract,proto3,oneof"` } type GovernanceMessage_AccountantModifyBalance struct { // Global Accountant AccountantModifyBalance *AccountantModifyBalance `protobuf:"bytes,17,opt,name=accountant_modify_balance,json=accountantModifyBalance,proto3,oneof"` } type GovernanceMessage_CircleIntegrationUpdateWormholeFinality struct { // Circle Integration CircleIntegrationUpdateWormholeFinality *CircleIntegrationUpdateWormholeFinality `protobuf:"bytes,18,opt,name=circle_integration_update_wormhole_finality,json=circleIntegrationUpdateWormholeFinality,proto3,oneof"` } type GovernanceMessage_CircleIntegrationRegisterEmitterAndDomain struct { CircleIntegrationRegisterEmitterAndDomain *CircleIntegrationRegisterEmitterAndDomain `protobuf:"bytes,19,opt,name=circle_integration_register_emitter_and_domain,json=circleIntegrationRegisterEmitterAndDomain,proto3,oneof"` } type GovernanceMessage_CircleIntegrationUpgradeContractImplementation struct { CircleIntegrationUpgradeContractImplementation *CircleIntegrationUpgradeContractImplementation `protobuf:"bytes,20,opt,name=circle_integration_upgrade_contract_implementation,json=circleIntegrationUpgradeContractImplementation,proto3,oneof"` } type GovernanceMessage_IbcUpdateChannelChain struct { // IBC Receiver Integration IbcUpdateChannelChain *IbcUpdateChannelChain `protobuf:"bytes,21,opt,name=ibc_update_channel_chain,json=ibcUpdateChannelChain,proto3,oneof"` } type GovernanceMessage_WormholeRelayerSetDefaultDeliveryProvider struct { // Wormhole Relayer module WormholeRelayerSetDefaultDeliveryProvider *WormholeRelayerSetDefaultDeliveryProvider `protobuf:"bytes,22,opt,name=wormhole_relayer_set_default_delivery_provider,json=wormholeRelayerSetDefaultDeliveryProvider,proto3,oneof"` } type GovernanceMessage_EvmCall struct { // Generic governance EvmCall *EvmCall `protobuf:"bytes,28,opt,name=evm_call,json=evmCall,proto3,oneof"` } type GovernanceMessage_SolanaCall struct { SolanaCall *SolanaCall `protobuf:"bytes,29,opt,name=solana_call,json=solanaCall,proto3,oneof"` } func (*GovernanceMessage_GuardianSet) isGovernanceMessage_Payload() {} func (*GovernanceMessage_ContractUpgrade) isGovernanceMessage_Payload() {} func (*GovernanceMessage_BridgeRegisterChain) isGovernanceMessage_Payload() {} func (*GovernanceMessage_BridgeContractUpgrade) isGovernanceMessage_Payload() {} func (*GovernanceMessage_RecoverChainId) isGovernanceMessage_Payload() {} func (*GovernanceMessage_WormchainStoreCode) isGovernanceMessage_Payload() {} func (*GovernanceMessage_WormchainInstantiateContract) isGovernanceMessage_Payload() {} func (*GovernanceMessage_WormchainMigrateContract) isGovernanceMessage_Payload() {} func (*GovernanceMessage_WormchainWasmInstantiateAllowlist) isGovernanceMessage_Payload() {} func (*GovernanceMessage_GatewayScheduleUpgrade) isGovernanceMessage_Payload() {} func (*GovernanceMessage_GatewayCancelUpgrade) isGovernanceMessage_Payload() {} func (*GovernanceMessage_GatewayIbcComposabilityMwSetContract) isGovernanceMessage_Payload() {} func (*GovernanceMessage_AccountantModifyBalance) isGovernanceMessage_Payload() {} func (*GovernanceMessage_CircleIntegrationUpdateWormholeFinality) isGovernanceMessage_Payload() {} func (*GovernanceMessage_CircleIntegrationRegisterEmitterAndDomain) isGovernanceMessage_Payload() {} func (*GovernanceMessage_CircleIntegrationUpgradeContractImplementation) isGovernanceMessage_Payload() { } func (*GovernanceMessage_IbcUpdateChannelChain) isGovernanceMessage_Payload() {} func (*GovernanceMessage_WormholeRelayerSetDefaultDeliveryProvider) isGovernanceMessage_Payload() {} func (*GovernanceMessage_EvmCall) isGovernanceMessage_Payload() {} func (*GovernanceMessage_SolanaCall) isGovernanceMessage_Payload() {} type InjectGovernanceVAAResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Canonical digests of the submitted VAAs. Digests [][]byte `protobuf:"bytes,1,rep,name=digests,proto3" json:"digests,omitempty"` } func (x *InjectGovernanceVAAResponse) Reset() { *x = InjectGovernanceVAAResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *InjectGovernanceVAAResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*InjectGovernanceVAAResponse) ProtoMessage() {} func (x *InjectGovernanceVAAResponse) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[2] 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) } // Deprecated: Use InjectGovernanceVAAResponse.ProtoReflect.Descriptor instead. func (*InjectGovernanceVAAResponse) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{2} } func (x *InjectGovernanceVAAResponse) GetDigests() [][]byte { if x != nil { return x.Digests } return nil } // GuardianSet represents a new guardian set to be submitted to and signed by the node. // During the genesis procedure, this data structure will be assembled using off-chain collaborative tooling // like GitHub using a human-readable encoding, so readability is a concern. type GuardianSetUpdate struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Guardians []*GuardianSetUpdate_Guardian `protobuf:"bytes,3,rep,name=guardians,proto3" json:"guardians,omitempty"` } func (x *GuardianSetUpdate) Reset() { *x = GuardianSetUpdate{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GuardianSetUpdate) String() string { return protoimpl.X.MessageStringOf(x) } func (*GuardianSetUpdate) ProtoMessage() {} func (x *GuardianSetUpdate) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[3] 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) } // Deprecated: Use GuardianSetUpdate.ProtoReflect.Descriptor instead. func (*GuardianSetUpdate) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{3} } func (x *GuardianSetUpdate) GetGuardians() []*GuardianSetUpdate_Guardian { if x != nil { return x.Guardians } return nil } // GuardianKey specifies the on-disk format for a node's guardian key. type GuardianKey struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // data is the binary representation of the secp256k1 private key. Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"` // Whether this key is deterministically generated and unsuitable for production mode. UnsafeDeterministicKey bool `protobuf:"varint,2,opt,name=unsafe_deterministic_key,json=unsafeDeterministicKey,proto3" json:"unsafe_deterministic_key,omitempty"` } func (x *GuardianKey) Reset() { *x = GuardianKey{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GuardianKey) String() string { return protoimpl.X.MessageStringOf(x) } func (*GuardianKey) ProtoMessage() {} func (x *GuardianKey) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[4] 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) } // Deprecated: Use GuardianKey.ProtoReflect.Descriptor instead. func (*GuardianKey) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{4} } func (x *GuardianKey) GetData() []byte { if x != nil { return x.Data } return nil } func (x *GuardianKey) GetUnsafeDeterministicKey() bool { if x != nil { return x.UnsafeDeterministicKey } return false } type BridgeRegisterChain struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Module identifier of the token or NFT bridge (typically "TokenBridge" or "NFTBridge") Module string `protobuf:"bytes,1,opt,name=module,proto3" json:"module,omitempty"` // ID of the chain to be registered. ChainId uint32 `protobuf:"varint,2,opt,name=chain_id,json=chainId,proto3" json:"chain_id,omitempty"` // Hex-encoded emitter address to be registered (without leading 0x). EmitterAddress string `protobuf:"bytes,3,opt,name=emitter_address,json=emitterAddress,proto3" json:"emitter_address,omitempty"` } func (x *BridgeRegisterChain) Reset() { *x = BridgeRegisterChain{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *BridgeRegisterChain) String() string { return protoimpl.X.MessageStringOf(x) } func (*BridgeRegisterChain) ProtoMessage() {} func (x *BridgeRegisterChain) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[5] 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) } // Deprecated: Use BridgeRegisterChain.ProtoReflect.Descriptor instead. func (*BridgeRegisterChain) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{5} } func (x *BridgeRegisterChain) GetModule() string { if x != nil { return x.Module } return "" } func (x *BridgeRegisterChain) GetChainId() uint32 { if x != nil { return x.ChainId } return 0 } func (x *BridgeRegisterChain) GetEmitterAddress() string { if x != nil { return x.EmitterAddress } return "" } type AccountantModifyBalance struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Module identifier of the accountant "GlobalAccountant" Module string `protobuf:"bytes,1,opt,name=module,proto3" json:"module,omitempty"` // ID of the chain to receive this modify. TargetChainId uint32 `protobuf:"varint,2,opt,name=target_chain_id,json=targetChainId,proto3" json:"target_chain_id,omitempty"` // The sequence number of this modification. Each modification must be // uniquely identifiable just by its sequnce number. Sequence uint64 `protobuf:"varint,3,opt,name=sequence,proto3" json:"sequence,omitempty"` // U16 chain id of the account to be modified. ChainId uint32 `protobuf:"varint,4,opt,name=chain_id,json=chainId,proto3" json:"chain_id,omitempty"` // U16 the chain id of the native chain for the token. TokenChain uint32 `protobuf:"varint,5,opt,name=token_chain,json=tokenChain,proto3" json:"token_chain,omitempty"` // The address of the token on its native chain, hex string encoded. TokenAddress string `protobuf:"bytes,6,opt,name=token_address,json=tokenAddress,proto3" json:"token_address,omitempty"` // The kind of modification to be made. Kind ModificationKind `protobuf:"varint,7,opt,name=kind,proto3,enum=node.v1.ModificationKind" json:"kind,omitempty"` // The amount to be modified. This should be a decimal formatted string indicating the // "raw" amount, not adjusted by the decimals of the token. Amount string `protobuf:"bytes,8,opt,name=amount,proto3" json:"amount,omitempty"` // A human-readable reason for the modification (max 32 bytes). Reason string `protobuf:"bytes,9,opt,name=reason,proto3" json:"reason,omitempty"` } func (x *AccountantModifyBalance) Reset() { *x = AccountantModifyBalance{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *AccountantModifyBalance) String() string { return protoimpl.X.MessageStringOf(x) } func (*AccountantModifyBalance) ProtoMessage() {} func (x *AccountantModifyBalance) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[6] 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) } // Deprecated: Use AccountantModifyBalance.ProtoReflect.Descriptor instead. func (*AccountantModifyBalance) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{6} } func (x *AccountantModifyBalance) GetModule() string { if x != nil { return x.Module } return "" } func (x *AccountantModifyBalance) GetTargetChainId() uint32 { if x != nil { return x.TargetChainId } return 0 } func (x *AccountantModifyBalance) GetSequence() uint64 { if x != nil { return x.Sequence } return 0 } func (x *AccountantModifyBalance) GetChainId() uint32 { if x != nil { return x.ChainId } return 0 } func (x *AccountantModifyBalance) GetTokenChain() uint32 { if x != nil { return x.TokenChain } return 0 } func (x *AccountantModifyBalance) GetTokenAddress() string { if x != nil { return x.TokenAddress } return "" } func (x *AccountantModifyBalance) GetKind() ModificationKind { if x != nil { return x.Kind } return ModificationKind_MODIFICATION_KIND_UNSPECIFIED } func (x *AccountantModifyBalance) GetAmount() string { if x != nil { return x.Amount } return "" } func (x *AccountantModifyBalance) GetReason() string { if x != nil { return x.Reason } return "" } // ContractUpgrade represents a Wormhole contract update to be submitted to and signed by the node. type ContractUpgrade struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // ID of the chain where the Wormhole contract should be updated (uint16). ChainId uint32 `protobuf:"varint,1,opt,name=chain_id,json=chainId,proto3" json:"chain_id,omitempty"` // Hex-encoded address (without leading 0x) address of the new program/contract. NewContract string `protobuf:"bytes,2,opt,name=new_contract,json=newContract,proto3" json:"new_contract,omitempty"` } func (x *ContractUpgrade) Reset() { *x = ContractUpgrade{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ContractUpgrade) String() string { return protoimpl.X.MessageStringOf(x) } func (*ContractUpgrade) ProtoMessage() {} func (x *ContractUpgrade) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[7] 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) } // Deprecated: Use ContractUpgrade.ProtoReflect.Descriptor instead. func (*ContractUpgrade) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{7} } func (x *ContractUpgrade) GetChainId() uint32 { if x != nil { return x.ChainId } return 0 } func (x *ContractUpgrade) GetNewContract() string { if x != nil { return x.NewContract } return "" } type BridgeUpgradeContract struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Module identifier of the token or NFT bridge (typically "TokenBridge" or "NFTBridge"). Module string `protobuf:"bytes,1,opt,name=module,proto3" json:"module,omitempty"` // ID of the chain where the bridge contract should be updated (uint16). TargetChainId uint32 `protobuf:"varint,2,opt,name=target_chain_id,json=targetChainId,proto3" json:"target_chain_id,omitempty"` // Hex-encoded address (without leading 0x) of the new program/contract. NewContract string `protobuf:"bytes,3,opt,name=new_contract,json=newContract,proto3" json:"new_contract,omitempty"` } func (x *BridgeUpgradeContract) Reset() { *x = BridgeUpgradeContract{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *BridgeUpgradeContract) String() string { return protoimpl.X.MessageStringOf(x) } func (*BridgeUpgradeContract) ProtoMessage() {} func (x *BridgeUpgradeContract) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[8] 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) } // Deprecated: Use BridgeUpgradeContract.ProtoReflect.Descriptor instead. func (*BridgeUpgradeContract) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{8} } func (x *BridgeUpgradeContract) GetModule() string { if x != nil { return x.Module } return "" } func (x *BridgeUpgradeContract) GetTargetChainId() uint32 { if x != nil { return x.TargetChainId } return 0 } func (x *BridgeUpgradeContract) GetNewContract() string { if x != nil { return x.NewContract } return "" } type RecoverChainId struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Module identifier Module string `protobuf:"bytes,1,opt,name=module,proto3" json:"module,omitempty"` // The EVM chain ID of the chain to be recovered // This should be a decimal formatted integer string (Uint256) EvmChainId string `protobuf:"bytes,2,opt,name=evm_chain_id,json=evmChainId,proto3" json:"evm_chain_id,omitempty"` // The new chain ID to be used for the chain NewChainId uint32 `protobuf:"varint,3,opt,name=new_chain_id,json=newChainId,proto3" json:"new_chain_id,omitempty"` } func (x *RecoverChainId) Reset() { *x = RecoverChainId{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RecoverChainId) String() string { return protoimpl.X.MessageStringOf(x) } func (*RecoverChainId) ProtoMessage() {} func (x *RecoverChainId) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[9] 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) } // Deprecated: Use RecoverChainId.ProtoReflect.Descriptor instead. func (*RecoverChainId) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{9} } func (x *RecoverChainId) GetModule() string { if x != nil { return x.Module } return "" } func (x *RecoverChainId) GetEvmChainId() string { if x != nil { return x.EvmChainId } return "" } func (x *RecoverChainId) GetNewChainId() uint32 { if x != nil { return x.NewChainId } return 0 } type WormchainStoreCode struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // payload is the hex string of the sha3 256 hash of the wasm binary being uploaded WasmHash string `protobuf:"bytes,1,opt,name=wasm_hash,json=wasmHash,proto3" json:"wasm_hash,omitempty"` } func (x *WormchainStoreCode) Reset() { *x = WormchainStoreCode{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *WormchainStoreCode) String() string { return protoimpl.X.MessageStringOf(x) } func (*WormchainStoreCode) ProtoMessage() {} func (x *WormchainStoreCode) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[10] 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) } // Deprecated: Use WormchainStoreCode.ProtoReflect.Descriptor instead. func (*WormchainStoreCode) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{10} } func (x *WormchainStoreCode) GetWasmHash() string { if x != nil { return x.WasmHash } return "" } type WormchainInstantiateContract struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // CodeID is the reference to the stored WASM code CodeId uint64 `protobuf:"varint,1,opt,name=code_id,json=codeId,proto3" json:"code_id,omitempty"` // Label is optional metadata to be stored with a contract instance. Label string `protobuf:"bytes,2,opt,name=label,proto3" json:"label,omitempty"` // Json encoded message to be passed to the contract on instantiation InstantiationMsg string `protobuf:"bytes,3,opt,name=instantiation_msg,json=instantiationMsg,proto3" json:"instantiation_msg,omitempty"` } func (x *WormchainInstantiateContract) Reset() { *x = WormchainInstantiateContract{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *WormchainInstantiateContract) String() string { return protoimpl.X.MessageStringOf(x) } func (*WormchainInstantiateContract) ProtoMessage() {} func (x *WormchainInstantiateContract) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[11] 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) } // Deprecated: Use WormchainInstantiateContract.ProtoReflect.Descriptor instead. func (*WormchainInstantiateContract) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{11} } func (x *WormchainInstantiateContract) GetCodeId() uint64 { if x != nil { return x.CodeId } return 0 } func (x *WormchainInstantiateContract) GetLabel() string { if x != nil { return x.Label } return "" } func (x *WormchainInstantiateContract) GetInstantiationMsg() string { if x != nil { return x.InstantiationMsg } return "" } type WormchainMigrateContract struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // CodeID is the reference to the stored WASM code that the contract should migrate to. CodeId uint64 `protobuf:"varint,1,opt,name=code_id,json=codeId,proto3" json:"code_id,omitempty"` // The address of the contract being migrated. Contract string `protobuf:"bytes,2,opt,name=contract,proto3" json:"contract,omitempty"` // Msg json encoded message to be passed to the contract on migration InstantiationMsg string `protobuf:"bytes,3,opt,name=instantiation_msg,json=instantiationMsg,proto3" json:"instantiation_msg,omitempty"` } func (x *WormchainMigrateContract) Reset() { *x = WormchainMigrateContract{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *WormchainMigrateContract) String() string { return protoimpl.X.MessageStringOf(x) } func (*WormchainMigrateContract) ProtoMessage() {} func (x *WormchainMigrateContract) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[12] 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) } // Deprecated: Use WormchainMigrateContract.ProtoReflect.Descriptor instead. func (*WormchainMigrateContract) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{12} } func (x *WormchainMigrateContract) GetCodeId() uint64 { if x != nil { return x.CodeId } return 0 } func (x *WormchainMigrateContract) GetContract() string { if x != nil { return x.Contract } return "" } func (x *WormchainMigrateContract) GetInstantiationMsg() string { if x != nil { return x.InstantiationMsg } return "" } type WormchainWasmInstantiateAllowlist struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // CodeID is the reference to the stored WASM code. CodeId uint64 `protobuf:"varint,1,opt,name=code_id,json=codeId,proto3" json:"code_id,omitempty"` // The address of the contract that is allowlisted to call wasm instantiate without a VAA. Contract string `protobuf:"bytes,2,opt,name=contract,proto3" json:"contract,omitempty"` // Specifying whether to add or delete the allowlist entry Action WormchainWasmInstantiateAllowlistAction `protobuf:"varint,3,opt,name=action,proto3,enum=node.v1.WormchainWasmInstantiateAllowlistAction" json:"action,omitempty"` } func (x *WormchainWasmInstantiateAllowlist) Reset() { *x = WormchainWasmInstantiateAllowlist{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *WormchainWasmInstantiateAllowlist) String() string { return protoimpl.X.MessageStringOf(x) } func (*WormchainWasmInstantiateAllowlist) ProtoMessage() {} func (x *WormchainWasmInstantiateAllowlist) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[13] 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) } // Deprecated: Use WormchainWasmInstantiateAllowlist.ProtoReflect.Descriptor instead. func (*WormchainWasmInstantiateAllowlist) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{13} } func (x *WormchainWasmInstantiateAllowlist) GetCodeId() uint64 { if x != nil { return x.CodeId } return 0 } func (x *WormchainWasmInstantiateAllowlist) GetContract() string { if x != nil { return x.Contract } return "" } func (x *WormchainWasmInstantiateAllowlist) GetAction() WormchainWasmInstantiateAllowlistAction { if x != nil { return x.Action } return WormchainWasmInstantiateAllowlistAction_WORMCHAIN_WASM_INSTANTIATE_ALLOWLIST_ACTION_UNSPECIFIED } type GatewayIbcComposabilityMwSetContract struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // The address of the contract that is set in the ibc composability middleware. Contract string `protobuf:"bytes,1,opt,name=contract,proto3" json:"contract,omitempty"` } func (x *GatewayIbcComposabilityMwSetContract) Reset() { *x = GatewayIbcComposabilityMwSetContract{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GatewayIbcComposabilityMwSetContract) String() string { return protoimpl.X.MessageStringOf(x) } func (*GatewayIbcComposabilityMwSetContract) ProtoMessage() {} func (x *GatewayIbcComposabilityMwSetContract) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[14] 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) } // Deprecated: Use GatewayIbcComposabilityMwSetContract.ProtoReflect.Descriptor instead. func (*GatewayIbcComposabilityMwSetContract) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{14} } func (x *GatewayIbcComposabilityMwSetContract) GetContract() string { if x != nil { return x.Contract } return "" } type GatewayScheduleUpgrade struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Name of the upgrade Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // Height of the upgrade halt Height uint64 `protobuf:"varint,2,opt,name=height,proto3" json:"height,omitempty"` } func (x *GatewayScheduleUpgrade) Reset() { *x = GatewayScheduleUpgrade{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GatewayScheduleUpgrade) String() string { return protoimpl.X.MessageStringOf(x) } func (*GatewayScheduleUpgrade) ProtoMessage() {} func (x *GatewayScheduleUpgrade) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[15] 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) } // Deprecated: Use GatewayScheduleUpgrade.ProtoReflect.Descriptor instead. func (*GatewayScheduleUpgrade) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{15} } func (x *GatewayScheduleUpgrade) GetName() string { if x != nil { return x.Name } return "" } func (x *GatewayScheduleUpgrade) GetHeight() uint64 { if x != nil { return x.Height } return 0 } type GatewayCancelUpgrade struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *GatewayCancelUpgrade) Reset() { *x = GatewayCancelUpgrade{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GatewayCancelUpgrade) String() string { return protoimpl.X.MessageStringOf(x) } func (*GatewayCancelUpgrade) ProtoMessage() {} func (x *GatewayCancelUpgrade) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_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) } // Deprecated: Use GatewayCancelUpgrade.ProtoReflect.Descriptor instead. func (*GatewayCancelUpgrade) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{16} } type CircleIntegrationUpdateWormholeFinality struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Finality uint32 `protobuf:"varint,1,opt,name=finality,proto3" json:"finality,omitempty"` TargetChainId uint32 `protobuf:"varint,2,opt,name=target_chain_id,json=targetChainId,proto3" json:"target_chain_id,omitempty"` } func (x *CircleIntegrationUpdateWormholeFinality) Reset() { *x = CircleIntegrationUpdateWormholeFinality{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CircleIntegrationUpdateWormholeFinality) String() string { return protoimpl.X.MessageStringOf(x) } func (*CircleIntegrationUpdateWormholeFinality) ProtoMessage() {} func (x *CircleIntegrationUpdateWormholeFinality) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_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) } // Deprecated: Use CircleIntegrationUpdateWormholeFinality.ProtoReflect.Descriptor instead. func (*CircleIntegrationUpdateWormholeFinality) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{17} } func (x *CircleIntegrationUpdateWormholeFinality) GetFinality() uint32 { if x != nil { return x.Finality } return 0 } func (x *CircleIntegrationUpdateWormholeFinality) GetTargetChainId() uint32 { if x != nil { return x.TargetChainId } return 0 } type CircleIntegrationRegisterEmitterAndDomain struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ForeignEmitterChainId uint32 `protobuf:"varint,1,opt,name=foreign_emitter_chain_id,json=foreignEmitterChainId,proto3" json:"foreign_emitter_chain_id,omitempty"` ForeignEmitterAddress string `protobuf:"bytes,2,opt,name=foreign_emitter_address,json=foreignEmitterAddress,proto3" json:"foreign_emitter_address,omitempty"` CircleDomain uint32 `protobuf:"varint,3,opt,name=circle_domain,json=circleDomain,proto3" json:"circle_domain,omitempty"` TargetChainId uint32 `protobuf:"varint,4,opt,name=target_chain_id,json=targetChainId,proto3" json:"target_chain_id,omitempty"` } func (x *CircleIntegrationRegisterEmitterAndDomain) Reset() { *x = CircleIntegrationRegisterEmitterAndDomain{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CircleIntegrationRegisterEmitterAndDomain) String() string { return protoimpl.X.MessageStringOf(x) } func (*CircleIntegrationRegisterEmitterAndDomain) ProtoMessage() {} func (x *CircleIntegrationRegisterEmitterAndDomain) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_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) } // Deprecated: Use CircleIntegrationRegisterEmitterAndDomain.ProtoReflect.Descriptor instead. func (*CircleIntegrationRegisterEmitterAndDomain) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{18} } func (x *CircleIntegrationRegisterEmitterAndDomain) GetForeignEmitterChainId() uint32 { if x != nil { return x.ForeignEmitterChainId } return 0 } func (x *CircleIntegrationRegisterEmitterAndDomain) GetForeignEmitterAddress() string { if x != nil { return x.ForeignEmitterAddress } return "" } func (x *CircleIntegrationRegisterEmitterAndDomain) GetCircleDomain() uint32 { if x != nil { return x.CircleDomain } return 0 } func (x *CircleIntegrationRegisterEmitterAndDomain) GetTargetChainId() uint32 { if x != nil { return x.TargetChainId } return 0 } type CircleIntegrationUpgradeContractImplementation struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NewImplementationAddress string `protobuf:"bytes,1,opt,name=new_implementation_address,json=newImplementationAddress,proto3" json:"new_implementation_address,omitempty"` TargetChainId uint32 `protobuf:"varint,2,opt,name=target_chain_id,json=targetChainId,proto3" json:"target_chain_id,omitempty"` } func (x *CircleIntegrationUpgradeContractImplementation) Reset() { *x = CircleIntegrationUpgradeContractImplementation{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CircleIntegrationUpgradeContractImplementation) String() string { return protoimpl.X.MessageStringOf(x) } func (*CircleIntegrationUpgradeContractImplementation) ProtoMessage() {} func (x *CircleIntegrationUpgradeContractImplementation) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_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) } // Deprecated: Use CircleIntegrationUpgradeContractImplementation.ProtoReflect.Descriptor instead. func (*CircleIntegrationUpgradeContractImplementation) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{19} } func (x *CircleIntegrationUpgradeContractImplementation) GetNewImplementationAddress() string { if x != nil { return x.NewImplementationAddress } return "" } func (x *CircleIntegrationUpgradeContractImplementation) GetTargetChainId() uint32 { if x != nil { return x.TargetChainId } return 0 } type IbcUpdateChannelChain struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Chain ID that this governance VAA should be redeemed on TargetChainId uint32 `protobuf:"varint,1,opt,name=target_chain_id,json=targetChainId,proto3" json:"target_chain_id,omitempty"` // IBC channel ID ChannelId string `protobuf:"bytes,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"` // ChainID corresponding to the IBC channel ChainId uint32 `protobuf:"varint,3,opt,name=chain_id,json=chainId,proto3" json:"chain_id,omitempty"` // Specifying which governance module this message is for Module IbcUpdateChannelChainModule `protobuf:"varint,4,opt,name=module,proto3,enum=node.v1.IbcUpdateChannelChainModule" json:"module,omitempty"` } func (x *IbcUpdateChannelChain) Reset() { *x = IbcUpdateChannelChain{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *IbcUpdateChannelChain) String() string { return protoimpl.X.MessageStringOf(x) } func (*IbcUpdateChannelChain) ProtoMessage() {} func (x *IbcUpdateChannelChain) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[20] 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) } // Deprecated: Use IbcUpdateChannelChain.ProtoReflect.Descriptor instead. func (*IbcUpdateChannelChain) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{20} } func (x *IbcUpdateChannelChain) GetTargetChainId() uint32 { if x != nil { return x.TargetChainId } return 0 } func (x *IbcUpdateChannelChain) GetChannelId() string { if x != nil { return x.ChannelId } return "" } func (x *IbcUpdateChannelChain) GetChainId() uint32 { if x != nil { return x.ChainId } return 0 } func (x *IbcUpdateChannelChain) GetModule() IbcUpdateChannelChainModule { if x != nil { return x.Module } return IbcUpdateChannelChainModule_IBC_UPDATE_CHANNEL_CHAIN_MODULE_UNSPECIFIED } type WormholeRelayerSetDefaultDeliveryProvider struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // ID of the chain of the Wormhole Relayer contract where the default delivery provider should be updated (uint16). ChainId uint32 `protobuf:"varint,1,opt,name=chain_id,json=chainId,proto3" json:"chain_id,omitempty"` // Hex-encoded address (without leading 0x) of the new default delivery provider contract address. NewDefaultDeliveryProviderAddress string `protobuf:"bytes,2,opt,name=new_default_delivery_provider_address,json=newDefaultDeliveryProviderAddress,proto3" json:"new_default_delivery_provider_address,omitempty"` } func (x *WormholeRelayerSetDefaultDeliveryProvider) Reset() { *x = WormholeRelayerSetDefaultDeliveryProvider{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *WormholeRelayerSetDefaultDeliveryProvider) String() string { return protoimpl.X.MessageStringOf(x) } func (*WormholeRelayerSetDefaultDeliveryProvider) ProtoMessage() {} func (x *WormholeRelayerSetDefaultDeliveryProvider) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[21] 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) } // Deprecated: Use WormholeRelayerSetDefaultDeliveryProvider.ProtoReflect.Descriptor instead. func (*WormholeRelayerSetDefaultDeliveryProvider) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{21} } func (x *WormholeRelayerSetDefaultDeliveryProvider) GetChainId() uint32 { if x != nil { return x.ChainId } return 0 } func (x *WormholeRelayerSetDefaultDeliveryProvider) GetNewDefaultDeliveryProviderAddress() string { if x != nil { return x.NewDefaultDeliveryProviderAddress } return "" } type FindMissingMessagesRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Emitter chain ID to iterate. EmitterChain uint32 `protobuf:"varint,1,opt,name=emitter_chain,json=emitterChain,proto3" json:"emitter_chain,omitempty"` // Hex-encoded (without leading 0x) emitter address to iterate. EmitterAddress string `protobuf:"bytes,2,opt,name=emitter_address,json=emitterAddress,proto3" json:"emitter_address,omitempty"` // Whether to attempt to backfill missing messages from a list of remote nodes. RpcBackfill bool `protobuf:"varint,3,opt,name=rpc_backfill,json=rpcBackfill,proto3" json:"rpc_backfill,omitempty"` // List of remote nodes to backfill from. BackfillNodes []string `protobuf:"bytes,4,rep,name=backfill_nodes,json=backfillNodes,proto3" json:"backfill_nodes,omitempty"` } func (x *FindMissingMessagesRequest) Reset() { *x = FindMissingMessagesRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FindMissingMessagesRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*FindMissingMessagesRequest) ProtoMessage() {} func (x *FindMissingMessagesRequest) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[22] 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) } // Deprecated: Use FindMissingMessagesRequest.ProtoReflect.Descriptor instead. func (*FindMissingMessagesRequest) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{22} } func (x *FindMissingMessagesRequest) GetEmitterChain() uint32 { if x != nil { return x.EmitterChain } return 0 } func (x *FindMissingMessagesRequest) GetEmitterAddress() string { if x != nil { return x.EmitterAddress } return "" } func (x *FindMissingMessagesRequest) GetRpcBackfill() bool { if x != nil { return x.RpcBackfill } return false } func (x *FindMissingMessagesRequest) GetBackfillNodes() []string { if x != nil { return x.BackfillNodes } return nil } type FindMissingMessagesResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // List of missing sequence numbers. MissingMessages []string `protobuf:"bytes,1,rep,name=missing_messages,json=missingMessages,proto3" json:"missing_messages,omitempty"` // Range processed FirstSequence uint64 `protobuf:"varint,2,opt,name=first_sequence,json=firstSequence,proto3" json:"first_sequence,omitempty"` LastSequence uint64 `protobuf:"varint,3,opt,name=last_sequence,json=lastSequence,proto3" json:"last_sequence,omitempty"` } func (x *FindMissingMessagesResponse) Reset() { *x = FindMissingMessagesResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FindMissingMessagesResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*FindMissingMessagesResponse) ProtoMessage() {} func (x *FindMissingMessagesResponse) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[23] 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) } // Deprecated: Use FindMissingMessagesResponse.ProtoReflect.Descriptor instead. func (*FindMissingMessagesResponse) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{23} } func (x *FindMissingMessagesResponse) GetMissingMessages() []string { if x != nil { return x.MissingMessages } return nil } func (x *FindMissingMessagesResponse) GetFirstSequence() uint64 { if x != nil { return x.FirstSequence } return 0 } func (x *FindMissingMessagesResponse) GetLastSequence() uint64 { if x != nil { return x.LastSequence } return 0 } type SendObservationRequestRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ObservationRequest *v1.ObservationRequest `protobuf:"bytes,1,opt,name=observation_request,json=observationRequest,proto3" json:"observation_request,omitempty"` } func (x *SendObservationRequestRequest) Reset() { *x = SendObservationRequestRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SendObservationRequestRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*SendObservationRequestRequest) ProtoMessage() {} func (x *SendObservationRequestRequest) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[24] 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) } // Deprecated: Use SendObservationRequestRequest.ProtoReflect.Descriptor instead. func (*SendObservationRequestRequest) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{24} } func (x *SendObservationRequestRequest) GetObservationRequest() *v1.ObservationRequest { if x != nil { return x.ObservationRequest } return nil } type SendObservationRequestResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *SendObservationRequestResponse) Reset() { *x = SendObservationRequestResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SendObservationRequestResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*SendObservationRequestResponse) ProtoMessage() {} func (x *SendObservationRequestResponse) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[25] 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) } // Deprecated: Use SendObservationRequestResponse.ProtoReflect.Descriptor instead. func (*SendObservationRequestResponse) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{25} } type ChainGovernorStatusRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *ChainGovernorStatusRequest) Reset() { *x = ChainGovernorStatusRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ChainGovernorStatusRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ChainGovernorStatusRequest) ProtoMessage() {} func (x *ChainGovernorStatusRequest) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[26] 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) } // Deprecated: Use ChainGovernorStatusRequest.ProtoReflect.Descriptor instead. func (*ChainGovernorStatusRequest) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{26} } type ChainGovernorStatusResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Response string `protobuf:"bytes,1,opt,name=response,proto3" json:"response,omitempty"` } func (x *ChainGovernorStatusResponse) Reset() { *x = ChainGovernorStatusResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ChainGovernorStatusResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ChainGovernorStatusResponse) ProtoMessage() {} func (x *ChainGovernorStatusResponse) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[27] 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) } // Deprecated: Use ChainGovernorStatusResponse.ProtoReflect.Descriptor instead. func (*ChainGovernorStatusResponse) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{27} } func (x *ChainGovernorStatusResponse) GetResponse() string { if x != nil { return x.Response } return "" } type ChainGovernorReloadRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *ChainGovernorReloadRequest) Reset() { *x = ChainGovernorReloadRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ChainGovernorReloadRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ChainGovernorReloadRequest) ProtoMessage() {} func (x *ChainGovernorReloadRequest) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[28] 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) } // Deprecated: Use ChainGovernorReloadRequest.ProtoReflect.Descriptor instead. func (*ChainGovernorReloadRequest) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{28} } type ChainGovernorReloadResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Response string `protobuf:"bytes,1,opt,name=response,proto3" json:"response,omitempty"` } func (x *ChainGovernorReloadResponse) Reset() { *x = ChainGovernorReloadResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ChainGovernorReloadResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ChainGovernorReloadResponse) ProtoMessage() {} func (x *ChainGovernorReloadResponse) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[29] 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) } // Deprecated: Use ChainGovernorReloadResponse.ProtoReflect.Descriptor instead. func (*ChainGovernorReloadResponse) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{29} } func (x *ChainGovernorReloadResponse) GetResponse() string { if x != nil { return x.Response } return "" } type ChainGovernorDropPendingVAARequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields VaaId string `protobuf:"bytes,1,opt,name=vaa_id,json=vaaId,proto3" json:"vaa_id,omitempty"` } func (x *ChainGovernorDropPendingVAARequest) Reset() { *x = ChainGovernorDropPendingVAARequest{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ChainGovernorDropPendingVAARequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ChainGovernorDropPendingVAARequest) ProtoMessage() {} func (x *ChainGovernorDropPendingVAARequest) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[30] 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) } // Deprecated: Use ChainGovernorDropPendingVAARequest.ProtoReflect.Descriptor instead. func (*ChainGovernorDropPendingVAARequest) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{30} } func (x *ChainGovernorDropPendingVAARequest) GetVaaId() string { if x != nil { return x.VaaId } return "" } type ChainGovernorDropPendingVAAResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Response string `protobuf:"bytes,1,opt,name=response,proto3" json:"response,omitempty"` } func (x *ChainGovernorDropPendingVAAResponse) Reset() { *x = ChainGovernorDropPendingVAAResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ChainGovernorDropPendingVAAResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ChainGovernorDropPendingVAAResponse) ProtoMessage() {} func (x *ChainGovernorDropPendingVAAResponse) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[31] 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) } // Deprecated: Use ChainGovernorDropPendingVAAResponse.ProtoReflect.Descriptor instead. func (*ChainGovernorDropPendingVAAResponse) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{31} } func (x *ChainGovernorDropPendingVAAResponse) GetResponse() string { if x != nil { return x.Response } return "" } type ChainGovernorReleasePendingVAARequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields VaaId string `protobuf:"bytes,1,opt,name=vaa_id,json=vaaId,proto3" json:"vaa_id,omitempty"` } func (x *ChainGovernorReleasePendingVAARequest) Reset() { *x = ChainGovernorReleasePendingVAARequest{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ChainGovernorReleasePendingVAARequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ChainGovernorReleasePendingVAARequest) ProtoMessage() {} func (x *ChainGovernorReleasePendingVAARequest) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[32] 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) } // Deprecated: Use ChainGovernorReleasePendingVAARequest.ProtoReflect.Descriptor instead. func (*ChainGovernorReleasePendingVAARequest) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{32} } func (x *ChainGovernorReleasePendingVAARequest) GetVaaId() string { if x != nil { return x.VaaId } return "" } type ChainGovernorReleasePendingVAAResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Response string `protobuf:"bytes,1,opt,name=response,proto3" json:"response,omitempty"` } func (x *ChainGovernorReleasePendingVAAResponse) Reset() { *x = ChainGovernorReleasePendingVAAResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ChainGovernorReleasePendingVAAResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ChainGovernorReleasePendingVAAResponse) ProtoMessage() {} func (x *ChainGovernorReleasePendingVAAResponse) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[33] 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) } // Deprecated: Use ChainGovernorReleasePendingVAAResponse.ProtoReflect.Descriptor instead. func (*ChainGovernorReleasePendingVAAResponse) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{33} } func (x *ChainGovernorReleasePendingVAAResponse) GetResponse() string { if x != nil { return x.Response } return "" } type ChainGovernorResetReleaseTimerRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields VaaId string `protobuf:"bytes,1,opt,name=vaa_id,json=vaaId,proto3" json:"vaa_id,omitempty"` } func (x *ChainGovernorResetReleaseTimerRequest) Reset() { *x = ChainGovernorResetReleaseTimerRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ChainGovernorResetReleaseTimerRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ChainGovernorResetReleaseTimerRequest) ProtoMessage() {} func (x *ChainGovernorResetReleaseTimerRequest) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[34] 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) } // Deprecated: Use ChainGovernorResetReleaseTimerRequest.ProtoReflect.Descriptor instead. func (*ChainGovernorResetReleaseTimerRequest) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{34} } func (x *ChainGovernorResetReleaseTimerRequest) GetVaaId() string { if x != nil { return x.VaaId } return "" } type ChainGovernorResetReleaseTimerResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Response string `protobuf:"bytes,1,opt,name=response,proto3" json:"response,omitempty"` } func (x *ChainGovernorResetReleaseTimerResponse) Reset() { *x = ChainGovernorResetReleaseTimerResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ChainGovernorResetReleaseTimerResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ChainGovernorResetReleaseTimerResponse) ProtoMessage() {} func (x *ChainGovernorResetReleaseTimerResponse) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[35] 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) } // Deprecated: Use ChainGovernorResetReleaseTimerResponse.ProtoReflect.Descriptor instead. func (*ChainGovernorResetReleaseTimerResponse) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{35} } func (x *ChainGovernorResetReleaseTimerResponse) GetResponse() string { if x != nil { return x.Response } return "" } type PurgePythNetVaasRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields DaysOld uint64 `protobuf:"varint,1,opt,name=days_old,json=daysOld,proto3" json:"days_old,omitempty"` LogOnly bool `protobuf:"varint,2,opt,name=log_only,json=logOnly,proto3" json:"log_only,omitempty"` } func (x *PurgePythNetVaasRequest) Reset() { *x = PurgePythNetVaasRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PurgePythNetVaasRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*PurgePythNetVaasRequest) ProtoMessage() {} func (x *PurgePythNetVaasRequest) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[36] 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) } // Deprecated: Use PurgePythNetVaasRequest.ProtoReflect.Descriptor instead. func (*PurgePythNetVaasRequest) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{36} } func (x *PurgePythNetVaasRequest) GetDaysOld() uint64 { if x != nil { return x.DaysOld } return 0 } func (x *PurgePythNetVaasRequest) GetLogOnly() bool { if x != nil { return x.LogOnly } return false } type PurgePythNetVaasResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Response string `protobuf:"bytes,1,opt,name=response,proto3" json:"response,omitempty"` } func (x *PurgePythNetVaasResponse) Reset() { *x = PurgePythNetVaasResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PurgePythNetVaasResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*PurgePythNetVaasResponse) ProtoMessage() {} func (x *PurgePythNetVaasResponse) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[37] 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) } // Deprecated: Use PurgePythNetVaasResponse.ProtoReflect.Descriptor instead. func (*PurgePythNetVaasResponse) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{37} } func (x *PurgePythNetVaasResponse) GetResponse() string { if x != nil { return x.Response } return "" } type SignExistingVAARequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Vaa []byte `protobuf:"bytes,1,opt,name=vaa,proto3" json:"vaa,omitempty"` NewGuardianAddrs []string `protobuf:"bytes,2,rep,name=new_guardian_addrs,json=newGuardianAddrs,proto3" json:"new_guardian_addrs,omitempty"` NewGuardianSetIndex uint32 `protobuf:"varint,3,opt,name=new_guardian_set_index,json=newGuardianSetIndex,proto3" json:"new_guardian_set_index,omitempty"` } func (x *SignExistingVAARequest) Reset() { *x = SignExistingVAARequest{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SignExistingVAARequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*SignExistingVAARequest) ProtoMessage() {} func (x *SignExistingVAARequest) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[38] 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) } // Deprecated: Use SignExistingVAARequest.ProtoReflect.Descriptor instead. func (*SignExistingVAARequest) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{38} } func (x *SignExistingVAARequest) GetVaa() []byte { if x != nil { return x.Vaa } return nil } func (x *SignExistingVAARequest) GetNewGuardianAddrs() []string { if x != nil { return x.NewGuardianAddrs } return nil } func (x *SignExistingVAARequest) GetNewGuardianSetIndex() uint32 { if x != nil { return x.NewGuardianSetIndex } return 0 } type SignExistingVAAResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Vaa []byte `protobuf:"bytes,1,opt,name=vaa,proto3" json:"vaa,omitempty"` } func (x *SignExistingVAAResponse) Reset() { *x = SignExistingVAAResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SignExistingVAAResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*SignExistingVAAResponse) ProtoMessage() {} func (x *SignExistingVAAResponse) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[39] 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) } // Deprecated: Use SignExistingVAAResponse.ProtoReflect.Descriptor instead. func (*SignExistingVAAResponse) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{39} } func (x *SignExistingVAAResponse) GetVaa() []byte { if x != nil { return x.Vaa } return nil } type DumpRPCsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *DumpRPCsRequest) Reset() { *x = DumpRPCsRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DumpRPCsRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*DumpRPCsRequest) ProtoMessage() {} func (x *DumpRPCsRequest) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[40] 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) } // Deprecated: Use DumpRPCsRequest.ProtoReflect.Descriptor instead. func (*DumpRPCsRequest) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{40} } type DumpRPCsResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Response map[string]string `protobuf:"bytes,1,rep,name=response,proto3" json:"response,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } func (x *DumpRPCsResponse) Reset() { *x = DumpRPCsResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DumpRPCsResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*DumpRPCsResponse) ProtoMessage() {} func (x *DumpRPCsResponse) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[41] 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) } // Deprecated: Use DumpRPCsResponse.ProtoReflect.Descriptor instead. func (*DumpRPCsResponse) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{41} } func (x *DumpRPCsResponse) GetResponse() map[string]string { if x != nil { return x.Response } return nil } type GetAndObserveMissingVAAsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"` ApiKey string `protobuf:"bytes,2,opt,name=api_key,json=apiKey,proto3" json:"api_key,omitempty"` } func (x *GetAndObserveMissingVAAsRequest) Reset() { *x = GetAndObserveMissingVAAsRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetAndObserveMissingVAAsRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetAndObserveMissingVAAsRequest) ProtoMessage() {} func (x *GetAndObserveMissingVAAsRequest) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[42] 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) } // Deprecated: Use GetAndObserveMissingVAAsRequest.ProtoReflect.Descriptor instead. func (*GetAndObserveMissingVAAsRequest) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{42} } func (x *GetAndObserveMissingVAAsRequest) GetUrl() string { if x != nil { return x.Url } return "" } func (x *GetAndObserveMissingVAAsRequest) GetApiKey() string { if x != nil { return x.ApiKey } return "" } type GetAndObserveMissingVAAsResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Response string `protobuf:"bytes,1,opt,name=response,proto3" json:"response,omitempty"` } func (x *GetAndObserveMissingVAAsResponse) Reset() { *x = GetAndObserveMissingVAAsResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetAndObserveMissingVAAsResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetAndObserveMissingVAAsResponse) ProtoMessage() {} func (x *GetAndObserveMissingVAAsResponse) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[43] 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) } // Deprecated: Use GetAndObserveMissingVAAsResponse.ProtoReflect.Descriptor instead. func (*GetAndObserveMissingVAAsResponse) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{43} } func (x *GetAndObserveMissingVAAsResponse) GetResponse() string { if x != nil { return x.Response } return "" } // EvmCall represents a generic EVM call that can be executed by the generalized governance contract. type EvmCall struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // ID of the chain where the action should be executed (uint16). ChainId uint32 `protobuf:"varint,1,opt,name=chain_id,json=chainId,proto3" json:"chain_id,omitempty"` // Address of the governance contract (eth address starting with 0x) GovernanceContract string `protobuf:"bytes,2,opt,name=governance_contract,json=governanceContract,proto3" json:"governance_contract,omitempty"` // Address of the governed contract (eth address starting with 0x) TargetContract string `protobuf:"bytes,3,opt,name=target_contract,json=targetContract,proto3" json:"target_contract,omitempty"` AbiEncodedCall string `protobuf:"bytes,4,opt,name=abi_encoded_call,json=abiEncodedCall,proto3" json:"abi_encoded_call,omitempty"` } func (x *EvmCall) Reset() { *x = EvmCall{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EvmCall) String() string { return protoimpl.X.MessageStringOf(x) } func (*EvmCall) ProtoMessage() {} func (x *EvmCall) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[44] 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) } // Deprecated: Use EvmCall.ProtoReflect.Descriptor instead. func (*EvmCall) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{44} } func (x *EvmCall) GetChainId() uint32 { if x != nil { return x.ChainId } return 0 } func (x *EvmCall) GetGovernanceContract() string { if x != nil { return x.GovernanceContract } return "" } func (x *EvmCall) GetTargetContract() string { if x != nil { return x.TargetContract } return "" } func (x *EvmCall) GetAbiEncodedCall() string { if x != nil { return x.AbiEncodedCall } return "" } // SolanaCall represents a generic Solana call that can be executed by the generalized governance contract. type SolanaCall struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // ID of the chain where the action should be executed (uint16). ChainId uint32 `protobuf:"varint,1,opt,name=chain_id,json=chainId,proto3" json:"chain_id,omitempty"` // Address of the governance contract (solana address) GovernanceContract string `protobuf:"bytes,2,opt,name=governance_contract,json=governanceContract,proto3" json:"governance_contract,omitempty"` // Address of the governed contract (eth address starting with 0x) EncodedInstruction string `protobuf:"bytes,3,opt,name=encoded_instruction,json=encodedInstruction,proto3" json:"encoded_instruction,omitempty"` } func (x *SolanaCall) Reset() { *x = SolanaCall{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SolanaCall) String() string { return protoimpl.X.MessageStringOf(x) } func (*SolanaCall) ProtoMessage() {} func (x *SolanaCall) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[45] 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) } // Deprecated: Use SolanaCall.ProtoReflect.Descriptor instead. func (*SolanaCall) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{45} } func (x *SolanaCall) GetChainId() uint32 { if x != nil { return x.ChainId } return 0 } func (x *SolanaCall) GetGovernanceContract() string { if x != nil { return x.GovernanceContract } return "" } func (x *SolanaCall) GetEncodedInstruction() string { if x != nil { return x.EncodedInstruction } return "" } // List of guardian set members. type GuardianSetUpdate_Guardian struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Guardian key pubkey. Stored as hex string with 0x prefix for human readability - // this is the canonical Ethereum representation. Pubkey string `protobuf:"bytes,1,opt,name=pubkey,proto3" json:"pubkey,omitempty"` // Optional descriptive name. Not stored on any chain, purely informational. Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` } func (x *GuardianSetUpdate_Guardian) Reset() { *x = GuardianSetUpdate_Guardian{} if protoimpl.UnsafeEnabled { mi := &file_node_v1_node_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GuardianSetUpdate_Guardian) String() string { return protoimpl.X.MessageStringOf(x) } func (*GuardianSetUpdate_Guardian) ProtoMessage() {} func (x *GuardianSetUpdate_Guardian) ProtoReflect() protoreflect.Message { mi := &file_node_v1_node_proto_msgTypes[46] 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) } // Deprecated: Use GuardianSetUpdate_Guardian.ProtoReflect.Descriptor instead. func (*GuardianSetUpdate_Guardian) Descriptor() ([]byte, []int) { return file_node_v1_node_proto_rawDescGZIP(), []int{3, 0} } func (x *GuardianSetUpdate_Guardian) GetPubkey() string { if x != nil { return x.Pubkey } return "" } func (x *GuardianSetUpdate_Guardian) GetName() string { if x != nil { return x.Name } return "" } var File_node_v1_node_proto protoreflect.FileDescriptor var file_node_v1_node_proto_rawDesc = []byte{ 0x0a, 0x12, 0x6e, 0x6f, 0x64, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x1a, 0x16, 0x67, 0x6f, 0x73, 0x73, 0x69, 0x70, 0x2f, 0x76, 0x31, 0x2f, 0x67, 0x6f, 0x73, 0x73, 0x69, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x9e, 0x01, 0x0a, 0x1a, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x56, 0x41, 0x41, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x36, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0xbd, 0x10, 0x0a, 0x11, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 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, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x3f, 0x0a, 0x0c, 0x67, 0x75, 0x61, 0x72, 0x64, 0x69, 0x61, 0x6e, 0x5f, 0x73, 0x65, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x75, 0x61, 0x72, 0x64, 0x69, 0x61, 0x6e, 0x53, 0x65, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x0b, 0x67, 0x75, 0x61, 0x72, 0x64, 0x69, 0x61, 0x6e, 0x53, 0x65, 0x74, 0x12, 0x45, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x48, 0x00, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x12, 0x52, 0x0a, 0x15, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x48, 0x00, 0x52, 0x13, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x12, 0x58, 0x0a, 0x17, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x48, 0x00, 0x52, 0x15, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x12, 0x43, 0x0a, 0x10, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x48, 0x00, 0x52, 0x0e, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x4f, 0x0a, 0x14, 0x77, 0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x57, 0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x48, 0x00, 0x52, 0x12, 0x77, 0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x6d, 0x0a, 0x1e, 0x77, 0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x57, 0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x48, 0x00, 0x52, 0x1c, 0x77, 0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x61, 0x0a, 0x1a, 0x77, 0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x57, 0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x48, 0x00, 0x52, 0x18, 0x77, 0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x7d, 0x0a, 0x24, 0x77, 0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x77, 0x61, 0x73, 0x6d, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x57, 0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x57, 0x61, 0x73, 0x6d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x6c, 0x69, 0x73, 0x74, 0x48, 0x00, 0x52, 0x21, 0x77, 0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x57, 0x61, 0x73, 0x6d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x5b, 0x0a, 0x18, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x48, 0x00, 0x52, 0x16, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x12, 0x55, 0x0a, 0x16, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x5f, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x48, 0x00, 0x52, 0x14, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x12, 0x88, 0x01, 0x0a, 0x29, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x62, 0x63, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x77, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x49, 0x62, 0x63, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4d, 0x77, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x48, 0x00, 0x52, 0x24, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x49, 0x62, 0x63, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4d, 0x77, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x5e, 0x0a, 0x19, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x61, 0x6e, 0x74, 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x61, 0x6e, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x48, 0x00, 0x52, 0x17, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x61, 0x6e, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x90, 0x01, 0x0a, 0x2b, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x77, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65, 0x5f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x48, 0x00, 0x52, 0x27, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x97, 0x01, 0x0a, 0x2e, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x65, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x72, 0x5f, 0x61, 0x6e, 0x64, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x45, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x72, 0x41, 0x6e, 0x64, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x48, 0x00, 0x52, 0x29, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x45, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x72, 0x41, 0x6e, 0x64, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0xa5, 0x01, 0x0a, 0x32, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x49, 0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x2e, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x49, 0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x59, 0x0a, 0x18, 0x69, 0x62, 0x63, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x62, 0x63, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x48, 0x00, 0x52, 0x15, 0x69, 0x62, 0x63, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x12, 0x97, 0x01, 0x0a, 0x2e, 0x77, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x57, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x65, 0x74, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x48, 0x00, 0x52, 0x29, 0x77, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x65, 0x74, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x2d, 0x0a, 0x08, 0x65, 0x76, 0x6d, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x76, 0x6d, 0x43, 0x61, 0x6c, 0x6c, 0x48, 0x00, 0x52, 0x07, 0x65, 0x76, 0x6d, 0x43, 0x61, 0x6c, 0x6c, 0x12, 0x36, 0x0a, 0x0b, 0x73, 0x6f, 0x6c, 0x61, 0x6e, 0x61, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x6f, 0x6c, 0x61, 0x6e, 0x61, 0x43, 0x61, 0x6c, 0x6c, 0x48, 0x00, 0x52, 0x0a, 0x73, 0x6f, 0x6c, 0x61, 0x6e, 0x61, 0x43, 0x61, 0x6c, 0x6c, 0x42, 0x09, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x22, 0x37, 0x0a, 0x1b, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x56, 0x41, 0x41, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x07, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x73, 0x22, 0x8e, 0x01, 0x0a, 0x11, 0x47, 0x75, 0x61, 0x72, 0x64, 0x69, 0x61, 0x6e, 0x53, 0x65, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x41, 0x0a, 0x09, 0x67, 0x75, 0x61, 0x72, 0x64, 0x69, 0x61, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x75, 0x61, 0x72, 0x64, 0x69, 0x61, 0x6e, 0x53, 0x65, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x47, 0x75, 0x61, 0x72, 0x64, 0x69, 0x61, 0x6e, 0x52, 0x09, 0x67, 0x75, 0x61, 0x72, 0x64, 0x69, 0x61, 0x6e, 0x73, 0x1a, 0x36, 0x0a, 0x08, 0x47, 0x75, 0x61, 0x72, 0x64, 0x69, 0x61, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x5b, 0x0a, 0x0b, 0x47, 0x75, 0x61, 0x72, 0x64, 0x69, 0x61, 0x6e, 0x4b, 0x65, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x38, 0x0a, 0x18, 0x75, 0x6e, 0x73, 0x61, 0x66, 0x65, 0x5f, 0x64, 0x65, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x69, 0x73, 0x74, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x75, 0x6e, 0x73, 0x61, 0x66, 0x65, 0x44, 0x65, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x69, 0x73, 0x74, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x22, 0x71, 0x0a, 0x13, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0xb5, 0x02, 0x0a, 0x17, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x61, 0x6e, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2d, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0x4f, 0x0a, 0x0f, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x65, 0x77, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x65, 0x77, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x22, 0x7a, 0x0a, 0x15, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x65, 0x77, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x65, 0x77, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x22, 0x6c, 0x0a, 0x0e, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0c, 0x65, 0x76, 0x6d, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x76, 0x6d, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x6e, 0x65, 0x77, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6e, 0x65, 0x77, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x22, 0x31, 0x0a, 0x12, 0x57, 0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x61, 0x73, 0x6d, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x61, 0x73, 0x6d, 0x48, 0x61, 0x73, 0x68, 0x22, 0x7a, 0x0a, 0x1c, 0x57, 0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x2b, 0x0a, 0x11, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x73, 0x67, 0x22, 0x7c, 0x0a, 0x18, 0x57, 0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x73, 0x67, 0x22, 0xa2, 0x01, 0x0a, 0x21, 0x57, 0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x57, 0x61, 0x73, 0x6d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x48, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x57, 0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x57, 0x61, 0x73, 0x6d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x6c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x42, 0x0a, 0x24, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x49, 0x62, 0x63, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4d, 0x77, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x22, 0x44, 0x0a, 0x16, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x16, 0x0a, 0x14, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x22, 0x6d, 0x0a, 0x27, 0x43, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x22, 0xe9, 0x01, 0x0a, 0x29, 0x43, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x45, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x72, 0x41, 0x6e, 0x64, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x37, 0x0a, 0x18, 0x66, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x5f, 0x65, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x66, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x45, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x72, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x36, 0x0a, 0x17, 0x66, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x5f, 0x65, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x66, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x45, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x22, 0x96, 0x01, 0x0a, 0x2e, 0x43, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x49, 0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3c, 0x0a, 0x1a, 0x6e, 0x65, 0x77, 0x5f, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x18, 0x6e, 0x65, 0x77, 0x49, 0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x22, 0xb7, 0x01, 0x0a, 0x15, 0x49, 0x62, 0x63, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x3c, 0x0a, 0x06, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x62, 0x63, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x06, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x22, 0x98, 0x01, 0x0a, 0x29, 0x57, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x65, 0x74, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x50, 0x0a, 0x25, 0x6e, 0x65, 0x77, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x21, 0x6e, 0x65, 0x77, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0xb4, 0x01, 0x0a, 0x1a, 0x46, 0x69, 0x6e, 0x64, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x72, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x70, 0x63, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x66, 0x69, 0x6c, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x72, 0x70, 0x63, 0x42, 0x61, 0x63, 0x6b, 0x66, 0x69, 0x6c, 0x6c, 0x12, 0x25, 0x0a, 0x0e, 0x62, 0x61, 0x63, 0x6b, 0x66, 0x69, 0x6c, 0x6c, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x62, 0x61, 0x63, 0x6b, 0x66, 0x69, 0x6c, 0x6c, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x22, 0x94, 0x01, 0x0a, 0x1b, 0x46, 0x69, 0x6e, 0x64, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x66, 0x69, 0x72, 0x73, 0x74, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x6c, 0x61, 0x73, 0x74, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x22, 0x6f, 0x0a, 0x1d, 0x53, 0x65, 0x6e, 0x64, 0x4f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4e, 0x0a, 0x13, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x67, 0x6f, 0x73, 0x73, 0x69, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x12, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x20, 0x0a, 0x1e, 0x53, 0x65, 0x6e, 0x64, 0x4f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1c, 0x0a, 0x1a, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x39, 0x0a, 0x1b, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1c, 0x0a, 0x1a, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x39, 0x0a, 0x1b, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3b, 0x0a, 0x22, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x44, 0x72, 0x6f, 0x70, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x56, 0x41, 0x41, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x15, 0x0a, 0x06, 0x76, 0x61, 0x61, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x61, 0x49, 0x64, 0x22, 0x41, 0x0a, 0x23, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x44, 0x72, 0x6f, 0x70, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x56, 0x41, 0x41, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3e, 0x0a, 0x25, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x56, 0x41, 0x41, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x15, 0x0a, 0x06, 0x76, 0x61, 0x61, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x61, 0x49, 0x64, 0x22, 0x44, 0x0a, 0x26, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x56, 0x41, 0x41, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3e, 0x0a, 0x25, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x15, 0x0a, 0x06, 0x76, 0x61, 0x61, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x61, 0x49, 0x64, 0x22, 0x44, 0x0a, 0x26, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4f, 0x0a, 0x17, 0x50, 0x75, 0x72, 0x67, 0x65, 0x50, 0x79, 0x74, 0x68, 0x4e, 0x65, 0x74, 0x56, 0x61, 0x61, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x64, 0x61, 0x79, 0x73, 0x5f, 0x6f, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x64, 0x61, 0x79, 0x73, 0x4f, 0x6c, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x67, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x6c, 0x6f, 0x67, 0x4f, 0x6e, 0x6c, 0x79, 0x22, 0x36, 0x0a, 0x18, 0x50, 0x75, 0x72, 0x67, 0x65, 0x50, 0x79, 0x74, 0x68, 0x4e, 0x65, 0x74, 0x56, 0x61, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8d, 0x01, 0x0a, 0x16, 0x53, 0x69, 0x67, 0x6e, 0x45, 0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x56, 0x41, 0x41, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x76, 0x61, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x76, 0x61, 0x61, 0x12, 0x2c, 0x0a, 0x12, 0x6e, 0x65, 0x77, 0x5f, 0x67, 0x75, 0x61, 0x72, 0x64, 0x69, 0x61, 0x6e, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x6e, 0x65, 0x77, 0x47, 0x75, 0x61, 0x72, 0x64, 0x69, 0x61, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x73, 0x12, 0x33, 0x0a, 0x16, 0x6e, 0x65, 0x77, 0x5f, 0x67, 0x75, 0x61, 0x72, 0x64, 0x69, 0x61, 0x6e, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x6e, 0x65, 0x77, 0x47, 0x75, 0x61, 0x72, 0x64, 0x69, 0x61, 0x6e, 0x53, 0x65, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x2b, 0x0a, 0x17, 0x53, 0x69, 0x67, 0x6e, 0x45, 0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x56, 0x41, 0x41, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x76, 0x61, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x76, 0x61, 0x61, 0x22, 0x11, 0x0a, 0x0f, 0x44, 0x75, 0x6d, 0x70, 0x52, 0x50, 0x43, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x94, 0x01, 0x0a, 0x10, 0x44, 0x75, 0x6d, 0x70, 0x52, 0x50, 0x43, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x75, 0x6d, 0x70, 0x52, 0x50, 0x43, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x1a, 0x3b, 0x0a, 0x0d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x4c, 0x0a, 0x1f, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x64, 0x4f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x56, 0x41, 0x41, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x17, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x22, 0x3e, 0x0a, 0x20, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x64, 0x4f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x56, 0x41, 0x41, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa8, 0x01, 0x0a, 0x07, 0x45, 0x76, 0x6d, 0x43, 0x61, 0x6c, 0x6c, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x13, 0x67, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x67, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x61, 0x62, 0x69, 0x5f, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x64, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x62, 0x69, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x64, 0x43, 0x61, 0x6c, 0x6c, 0x22, 0x89, 0x01, 0x0a, 0x0a, 0x53, 0x6f, 0x6c, 0x61, 0x6e, 0x61, 0x43, 0x61, 0x6c, 0x6c, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x13, 0x67, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x67, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x2f, 0x0a, 0x13, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x64, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2a, 0x70, 0x0a, 0x10, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x21, 0x0a, 0x1d, 0x4d, 0x4f, 0x44, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x4d, 0x4f, 0x44, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x41, 0x44, 0x44, 0x10, 0x01, 0x12, 0x1e, 0x0a, 0x1a, 0x4d, 0x4f, 0x44, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x53, 0x55, 0x42, 0x54, 0x52, 0x41, 0x43, 0x54, 0x10, 0x02, 0x2a, 0xd3, 0x01, 0x0a, 0x27, 0x57, 0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x57, 0x61, 0x73, 0x6d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x6c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x37, 0x57, 0x4f, 0x52, 0x4d, 0x43, 0x48, 0x41, 0x49, 0x4e, 0x5f, 0x57, 0x41, 0x53, 0x4d, 0x5f, 0x49, 0x4e, 0x53, 0x54, 0x41, 0x4e, 0x54, 0x49, 0x41, 0x54, 0x45, 0x5f, 0x41, 0x4c, 0x4c, 0x4f, 0x57, 0x4c, 0x49, 0x53, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x33, 0x0a, 0x2f, 0x57, 0x4f, 0x52, 0x4d, 0x43, 0x48, 0x41, 0x49, 0x4e, 0x5f, 0x57, 0x41, 0x53, 0x4d, 0x5f, 0x49, 0x4e, 0x53, 0x54, 0x41, 0x4e, 0x54, 0x49, 0x41, 0x54, 0x45, 0x5f, 0x41, 0x4c, 0x4c, 0x4f, 0x57, 0x4c, 0x49, 0x53, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x41, 0x44, 0x44, 0x10, 0x01, 0x12, 0x36, 0x0a, 0x32, 0x57, 0x4f, 0x52, 0x4d, 0x43, 0x48, 0x41, 0x49, 0x4e, 0x5f, 0x57, 0x41, 0x53, 0x4d, 0x5f, 0x49, 0x4e, 0x53, 0x54, 0x41, 0x4e, 0x54, 0x49, 0x41, 0x54, 0x45, 0x5f, 0x41, 0x4c, 0x4c, 0x4f, 0x57, 0x4c, 0x49, 0x53, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x02, 0x2a, 0xac, 0x01, 0x0a, 0x1b, 0x49, 0x62, 0x63, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x12, 0x2f, 0x0a, 0x2b, 0x49, 0x42, 0x43, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x43, 0x48, 0x41, 0x49, 0x4e, 0x5f, 0x4d, 0x4f, 0x44, 0x55, 0x4c, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x2c, 0x0a, 0x28, 0x49, 0x42, 0x43, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x43, 0x48, 0x41, 0x49, 0x4e, 0x5f, 0x4d, 0x4f, 0x44, 0x55, 0x4c, 0x45, 0x5f, 0x52, 0x45, 0x43, 0x45, 0x49, 0x56, 0x45, 0x52, 0x10, 0x01, 0x12, 0x2e, 0x0a, 0x2a, 0x49, 0x42, 0x43, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x43, 0x48, 0x41, 0x49, 0x4e, 0x5f, 0x4d, 0x4f, 0x44, 0x55, 0x4c, 0x45, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x4c, 0x41, 0x54, 0x4f, 0x52, 0x10, 0x02, 0x32, 0xed, 0x09, 0x0a, 0x15, 0x4e, 0x6f, 0x64, 0x65, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x60, 0x0a, 0x13, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x56, 0x41, 0x41, 0x12, 0x23, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x56, 0x41, 0x41, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x56, 0x41, 0x41, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x13, 0x46, 0x69, 0x6e, 0x64, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x23, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x69, 0x0a, 0x16, 0x53, 0x65, 0x6e, 0x64, 0x4f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x26, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x4f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x4f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x13, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x23, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x13, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x23, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x78, 0x0a, 0x1b, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x44, 0x72, 0x6f, 0x70, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x56, 0x41, 0x41, 0x12, 0x2b, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x44, 0x72, 0x6f, 0x70, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x56, 0x41, 0x41, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x44, 0x72, 0x6f, 0x70, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x56, 0x41, 0x41, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x81, 0x01, 0x0a, 0x1e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x56, 0x41, 0x41, 0x12, 0x2e, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x56, 0x41, 0x41, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x56, 0x41, 0x41, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x81, 0x01, 0x0a, 0x1e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x72, 0x12, 0x2e, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x57, 0x0a, 0x10, 0x50, 0x75, 0x72, 0x67, 0x65, 0x50, 0x79, 0x74, 0x68, 0x4e, 0x65, 0x74, 0x56, 0x61, 0x61, 0x73, 0x12, 0x20, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x75, 0x72, 0x67, 0x65, 0x50, 0x79, 0x74, 0x68, 0x4e, 0x65, 0x74, 0x56, 0x61, 0x61, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x75, 0x72, 0x67, 0x65, 0x50, 0x79, 0x74, 0x68, 0x4e, 0x65, 0x74, 0x56, 0x61, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x54, 0x0a, 0x0f, 0x53, 0x69, 0x67, 0x6e, 0x45, 0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x56, 0x41, 0x41, 0x12, 0x1f, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x45, 0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x56, 0x41, 0x41, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x45, 0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x56, 0x41, 0x41, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x08, 0x44, 0x75, 0x6d, 0x70, 0x52, 0x50, 0x43, 0x73, 0x12, 0x18, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x75, 0x6d, 0x70, 0x52, 0x50, 0x43, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x75, 0x6d, 0x70, 0x52, 0x50, 0x43, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6f, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x64, 0x4f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x56, 0x41, 0x41, 0x73, 0x12, 0x28, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x64, 0x4f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x56, 0x41, 0x41, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x64, 0x4f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x56, 0x41, 0x41, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x3d, 0x5a, 0x3b, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x65, 0x72, 0x74, 0x75, 0x73, 0x6f, 0x6e, 0x65, 0x2f, 0x77, 0x6f, 0x72, 0x6d, 0x68, 0x6f, 0x6c, 0x65, 0x2f, 0x6e, 0x6f, 0x64, 0x65, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x6e, 0x6f, 0x64, 0x65, 0x2f, 0x76, 0x31, 0x3b, 0x6e, 0x6f, 0x64, 0x65, 0x76, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( file_node_v1_node_proto_rawDescOnce sync.Once file_node_v1_node_proto_rawDescData = file_node_v1_node_proto_rawDesc ) func file_node_v1_node_proto_rawDescGZIP() []byte { file_node_v1_node_proto_rawDescOnce.Do(func() { file_node_v1_node_proto_rawDescData = protoimpl.X.CompressGZIP(file_node_v1_node_proto_rawDescData) }) return file_node_v1_node_proto_rawDescData } var file_node_v1_node_proto_enumTypes = make([]protoimpl.EnumInfo, 3) var file_node_v1_node_proto_msgTypes = make([]protoimpl.MessageInfo, 48) var file_node_v1_node_proto_goTypes = []interface{}{ (ModificationKind)(0), // 0: node.v1.ModificationKind (WormchainWasmInstantiateAllowlistAction)(0), // 1: node.v1.WormchainWasmInstantiateAllowlistAction (IbcUpdateChannelChainModule)(0), // 2: node.v1.IbcUpdateChannelChainModule (*InjectGovernanceVAARequest)(nil), // 3: node.v1.InjectGovernanceVAARequest (*GovernanceMessage)(nil), // 4: node.v1.GovernanceMessage (*InjectGovernanceVAAResponse)(nil), // 5: node.v1.InjectGovernanceVAAResponse (*GuardianSetUpdate)(nil), // 6: node.v1.GuardianSetUpdate (*GuardianKey)(nil), // 7: node.v1.GuardianKey (*BridgeRegisterChain)(nil), // 8: node.v1.BridgeRegisterChain (*AccountantModifyBalance)(nil), // 9: node.v1.AccountantModifyBalance (*ContractUpgrade)(nil), // 10: node.v1.ContractUpgrade (*BridgeUpgradeContract)(nil), // 11: node.v1.BridgeUpgradeContract (*RecoverChainId)(nil), // 12: node.v1.RecoverChainId (*WormchainStoreCode)(nil), // 13: node.v1.WormchainStoreCode (*WormchainInstantiateContract)(nil), // 14: node.v1.WormchainInstantiateContract (*WormchainMigrateContract)(nil), // 15: node.v1.WormchainMigrateContract (*WormchainWasmInstantiateAllowlist)(nil), // 16: node.v1.WormchainWasmInstantiateAllowlist (*GatewayIbcComposabilityMwSetContract)(nil), // 17: node.v1.GatewayIbcComposabilityMwSetContract (*GatewayScheduleUpgrade)(nil), // 18: node.v1.GatewayScheduleUpgrade (*GatewayCancelUpgrade)(nil), // 19: node.v1.GatewayCancelUpgrade (*CircleIntegrationUpdateWormholeFinality)(nil), // 20: node.v1.CircleIntegrationUpdateWormholeFinality (*CircleIntegrationRegisterEmitterAndDomain)(nil), // 21: node.v1.CircleIntegrationRegisterEmitterAndDomain (*CircleIntegrationUpgradeContractImplementation)(nil), // 22: node.v1.CircleIntegrationUpgradeContractImplementation (*IbcUpdateChannelChain)(nil), // 23: node.v1.IbcUpdateChannelChain (*WormholeRelayerSetDefaultDeliveryProvider)(nil), // 24: node.v1.WormholeRelayerSetDefaultDeliveryProvider (*FindMissingMessagesRequest)(nil), // 25: node.v1.FindMissingMessagesRequest (*FindMissingMessagesResponse)(nil), // 26: node.v1.FindMissingMessagesResponse (*SendObservationRequestRequest)(nil), // 27: node.v1.SendObservationRequestRequest (*SendObservationRequestResponse)(nil), // 28: node.v1.SendObservationRequestResponse (*ChainGovernorStatusRequest)(nil), // 29: node.v1.ChainGovernorStatusRequest (*ChainGovernorStatusResponse)(nil), // 30: node.v1.ChainGovernorStatusResponse (*ChainGovernorReloadRequest)(nil), // 31: node.v1.ChainGovernorReloadRequest (*ChainGovernorReloadResponse)(nil), // 32: node.v1.ChainGovernorReloadResponse (*ChainGovernorDropPendingVAARequest)(nil), // 33: node.v1.ChainGovernorDropPendingVAARequest (*ChainGovernorDropPendingVAAResponse)(nil), // 34: node.v1.ChainGovernorDropPendingVAAResponse (*ChainGovernorReleasePendingVAARequest)(nil), // 35: node.v1.ChainGovernorReleasePendingVAARequest (*ChainGovernorReleasePendingVAAResponse)(nil), // 36: node.v1.ChainGovernorReleasePendingVAAResponse (*ChainGovernorResetReleaseTimerRequest)(nil), // 37: node.v1.ChainGovernorResetReleaseTimerRequest (*ChainGovernorResetReleaseTimerResponse)(nil), // 38: node.v1.ChainGovernorResetReleaseTimerResponse (*PurgePythNetVaasRequest)(nil), // 39: node.v1.PurgePythNetVaasRequest (*PurgePythNetVaasResponse)(nil), // 40: node.v1.PurgePythNetVaasResponse (*SignExistingVAARequest)(nil), // 41: node.v1.SignExistingVAARequest (*SignExistingVAAResponse)(nil), // 42: node.v1.SignExistingVAAResponse (*DumpRPCsRequest)(nil), // 43: node.v1.DumpRPCsRequest (*DumpRPCsResponse)(nil), // 44: node.v1.DumpRPCsResponse (*GetAndObserveMissingVAAsRequest)(nil), // 45: node.v1.GetAndObserveMissingVAAsRequest (*GetAndObserveMissingVAAsResponse)(nil), // 46: node.v1.GetAndObserveMissingVAAsResponse (*EvmCall)(nil), // 47: node.v1.EvmCall (*SolanaCall)(nil), // 48: node.v1.SolanaCall (*GuardianSetUpdate_Guardian)(nil), // 49: node.v1.GuardianSetUpdate.Guardian nil, // 50: node.v1.DumpRPCsResponse.ResponseEntry (*v1.ObservationRequest)(nil), // 51: gossip.v1.ObservationRequest } var file_node_v1_node_proto_depIdxs = []int32{ 4, // 0: node.v1.InjectGovernanceVAARequest.messages:type_name -> node.v1.GovernanceMessage 6, // 1: node.v1.GovernanceMessage.guardian_set:type_name -> node.v1.GuardianSetUpdate 10, // 2: node.v1.GovernanceMessage.contract_upgrade:type_name -> node.v1.ContractUpgrade 8, // 3: node.v1.GovernanceMessage.bridge_register_chain:type_name -> node.v1.BridgeRegisterChain 11, // 4: node.v1.GovernanceMessage.bridge_contract_upgrade:type_name -> node.v1.BridgeUpgradeContract 12, // 5: node.v1.GovernanceMessage.recover_chain_id:type_name -> node.v1.RecoverChainId 13, // 6: node.v1.GovernanceMessage.wormchain_store_code:type_name -> node.v1.WormchainStoreCode 14, // 7: node.v1.GovernanceMessage.wormchain_instantiate_contract:type_name -> node.v1.WormchainInstantiateContract 15, // 8: node.v1.GovernanceMessage.wormchain_migrate_contract:type_name -> node.v1.WormchainMigrateContract 16, // 9: node.v1.GovernanceMessage.wormchain_wasm_instantiate_allowlist:type_name -> node.v1.WormchainWasmInstantiateAllowlist 18, // 10: node.v1.GovernanceMessage.gateway_schedule_upgrade:type_name -> node.v1.GatewayScheduleUpgrade 19, // 11: node.v1.GovernanceMessage.gateway_cancel_upgrade:type_name -> node.v1.GatewayCancelUpgrade 17, // 12: node.v1.GovernanceMessage.gateway_ibc_composability_mw_set_contract:type_name -> node.v1.GatewayIbcComposabilityMwSetContract 9, // 13: node.v1.GovernanceMessage.accountant_modify_balance:type_name -> node.v1.AccountantModifyBalance 20, // 14: node.v1.GovernanceMessage.circle_integration_update_wormhole_finality:type_name -> node.v1.CircleIntegrationUpdateWormholeFinality 21, // 15: node.v1.GovernanceMessage.circle_integration_register_emitter_and_domain:type_name -> node.v1.CircleIntegrationRegisterEmitterAndDomain 22, // 16: node.v1.GovernanceMessage.circle_integration_upgrade_contract_implementation:type_name -> node.v1.CircleIntegrationUpgradeContractImplementation 23, // 17: node.v1.GovernanceMessage.ibc_update_channel_chain:type_name -> node.v1.IbcUpdateChannelChain 24, // 18: node.v1.GovernanceMessage.wormhole_relayer_set_default_delivery_provider:type_name -> node.v1.WormholeRelayerSetDefaultDeliveryProvider 47, // 19: node.v1.GovernanceMessage.evm_call:type_name -> node.v1.EvmCall 48, // 20: node.v1.GovernanceMessage.solana_call:type_name -> node.v1.SolanaCall 49, // 21: node.v1.GuardianSetUpdate.guardians:type_name -> node.v1.GuardianSetUpdate.Guardian 0, // 22: node.v1.AccountantModifyBalance.kind:type_name -> node.v1.ModificationKind 1, // 23: node.v1.WormchainWasmInstantiateAllowlist.action:type_name -> node.v1.WormchainWasmInstantiateAllowlistAction 2, // 24: node.v1.IbcUpdateChannelChain.module:type_name -> node.v1.IbcUpdateChannelChainModule 51, // 25: node.v1.SendObservationRequestRequest.observation_request:type_name -> gossip.v1.ObservationRequest 50, // 26: node.v1.DumpRPCsResponse.response:type_name -> node.v1.DumpRPCsResponse.ResponseEntry 3, // 27: node.v1.NodePrivilegedService.InjectGovernanceVAA:input_type -> node.v1.InjectGovernanceVAARequest 25, // 28: node.v1.NodePrivilegedService.FindMissingMessages:input_type -> node.v1.FindMissingMessagesRequest 27, // 29: node.v1.NodePrivilegedService.SendObservationRequest:input_type -> node.v1.SendObservationRequestRequest 29, // 30: node.v1.NodePrivilegedService.ChainGovernorStatus:input_type -> node.v1.ChainGovernorStatusRequest 31, // 31: node.v1.NodePrivilegedService.ChainGovernorReload:input_type -> node.v1.ChainGovernorReloadRequest 33, // 32: node.v1.NodePrivilegedService.ChainGovernorDropPendingVAA:input_type -> node.v1.ChainGovernorDropPendingVAARequest 35, // 33: node.v1.NodePrivilegedService.ChainGovernorReleasePendingVAA:input_type -> node.v1.ChainGovernorReleasePendingVAARequest 37, // 34: node.v1.NodePrivilegedService.ChainGovernorResetReleaseTimer:input_type -> node.v1.ChainGovernorResetReleaseTimerRequest 39, // 35: node.v1.NodePrivilegedService.PurgePythNetVaas:input_type -> node.v1.PurgePythNetVaasRequest 41, // 36: node.v1.NodePrivilegedService.SignExistingVAA:input_type -> node.v1.SignExistingVAARequest 43, // 37: node.v1.NodePrivilegedService.DumpRPCs:input_type -> node.v1.DumpRPCsRequest 45, // 38: node.v1.NodePrivilegedService.GetAndObserveMissingVAAs:input_type -> node.v1.GetAndObserveMissingVAAsRequest 5, // 39: node.v1.NodePrivilegedService.InjectGovernanceVAA:output_type -> node.v1.InjectGovernanceVAAResponse 26, // 40: node.v1.NodePrivilegedService.FindMissingMessages:output_type -> node.v1.FindMissingMessagesResponse 28, // 41: node.v1.NodePrivilegedService.SendObservationRequest:output_type -> node.v1.SendObservationRequestResponse 30, // 42: node.v1.NodePrivilegedService.ChainGovernorStatus:output_type -> node.v1.ChainGovernorStatusResponse 32, // 43: node.v1.NodePrivilegedService.ChainGovernorReload:output_type -> node.v1.ChainGovernorReloadResponse 34, // 44: node.v1.NodePrivilegedService.ChainGovernorDropPendingVAA:output_type -> node.v1.ChainGovernorDropPendingVAAResponse 36, // 45: node.v1.NodePrivilegedService.ChainGovernorReleasePendingVAA:output_type -> node.v1.ChainGovernorReleasePendingVAAResponse 38, // 46: node.v1.NodePrivilegedService.ChainGovernorResetReleaseTimer:output_type -> node.v1.ChainGovernorResetReleaseTimerResponse 40, // 47: node.v1.NodePrivilegedService.PurgePythNetVaas:output_type -> node.v1.PurgePythNetVaasResponse 42, // 48: node.v1.NodePrivilegedService.SignExistingVAA:output_type -> node.v1.SignExistingVAAResponse 44, // 49: node.v1.NodePrivilegedService.DumpRPCs:output_type -> node.v1.DumpRPCsResponse 46, // 50: node.v1.NodePrivilegedService.GetAndObserveMissingVAAs:output_type -> node.v1.GetAndObserveMissingVAAsResponse 39, // [39:51] is the sub-list for method output_type 27, // [27:39] is the sub-list for method input_type 27, // [27:27] is the sub-list for extension type_name 27, // [27:27] is the sub-list for extension extendee 0, // [0:27] is the sub-list for field type_name } func init() { file_node_v1_node_proto_init() } func file_node_v1_node_proto_init() { if File_node_v1_node_proto != nil { return } if !protoimpl.UnsafeEnabled { file_node_v1_node_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*InjectGovernanceVAARequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GovernanceMessage); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*InjectGovernanceVAAResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GuardianSetUpdate); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GuardianKey); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*BridgeRegisterChain); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AccountantModifyBalance); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ContractUpgrade); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*BridgeUpgradeContract); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RecoverChainId); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*WormchainStoreCode); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*WormchainInstantiateContract); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*WormchainMigrateContract); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*WormchainWasmInstantiateAllowlist); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GatewayIbcComposabilityMwSetContract); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GatewayScheduleUpgrade); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GatewayCancelUpgrade); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CircleIntegrationUpdateWormholeFinality); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CircleIntegrationRegisterEmitterAndDomain); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CircleIntegrationUpgradeContractImplementation); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*IbcUpdateChannelChain); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*WormholeRelayerSetDefaultDeliveryProvider); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FindMissingMessagesRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FindMissingMessagesResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SendObservationRequestRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SendObservationRequestResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ChainGovernorStatusRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ChainGovernorStatusResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ChainGovernorReloadRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ChainGovernorReloadResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ChainGovernorDropPendingVAARequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ChainGovernorDropPendingVAAResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ChainGovernorReleasePendingVAARequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ChainGovernorReleasePendingVAAResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ChainGovernorResetReleaseTimerRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ChainGovernorResetReleaseTimerResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PurgePythNetVaasRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PurgePythNetVaasResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SignExistingVAARequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SignExistingVAAResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DumpRPCsRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DumpRPCsResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetAndObserveMissingVAAsRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetAndObserveMissingVAAsResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EvmCall); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SolanaCall); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_v1_node_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GuardianSetUpdate_Guardian); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } } file_node_v1_node_proto_msgTypes[1].OneofWrappers = []interface{}{ (*GovernanceMessage_GuardianSet)(nil), (*GovernanceMessage_ContractUpgrade)(nil), (*GovernanceMessage_BridgeRegisterChain)(nil), (*GovernanceMessage_BridgeContractUpgrade)(nil), (*GovernanceMessage_RecoverChainId)(nil), (*GovernanceMessage_WormchainStoreCode)(nil), (*GovernanceMessage_WormchainInstantiateContract)(nil), (*GovernanceMessage_WormchainMigrateContract)(nil), (*GovernanceMessage_WormchainWasmInstantiateAllowlist)(nil), (*GovernanceMessage_GatewayScheduleUpgrade)(nil), (*GovernanceMessage_GatewayCancelUpgrade)(nil), (*GovernanceMessage_GatewayIbcComposabilityMwSetContract)(nil), (*GovernanceMessage_AccountantModifyBalance)(nil), (*GovernanceMessage_CircleIntegrationUpdateWormholeFinality)(nil), (*GovernanceMessage_CircleIntegrationRegisterEmitterAndDomain)(nil), (*GovernanceMessage_CircleIntegrationUpgradeContractImplementation)(nil), (*GovernanceMessage_IbcUpdateChannelChain)(nil), (*GovernanceMessage_WormholeRelayerSetDefaultDeliveryProvider)(nil), (*GovernanceMessage_EvmCall)(nil), (*GovernanceMessage_SolanaCall)(nil), } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_node_v1_node_proto_rawDesc, NumEnums: 3, NumMessages: 48, NumExtensions: 0, NumServices: 1, }, GoTypes: file_node_v1_node_proto_goTypes, DependencyIndexes: file_node_v1_node_proto_depIdxs, EnumInfos: file_node_v1_node_proto_enumTypes, MessageInfos: file_node_v1_node_proto_msgTypes, }.Build() File_node_v1_node_proto = out.File file_node_v1_node_proto_rawDesc = nil file_node_v1_node_proto_goTypes = nil file_node_v1_node_proto_depIdxs = nil }