// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.28.1
// 	protoc        (unknown)
// source: fulmine/v1/service.proto

package fulminev1

import (
	_ "google.golang.org/genproto/googleapis/api/annotations"
	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 GetInfoResponse_Network int32

const (
	GetInfoResponse_NETWORK_UNSPECIFIED GetInfoResponse_Network = 0
	GetInfoResponse_NETWORK_MAINNET     GetInfoResponse_Network = 1
	GetInfoResponse_NETWORK_TESTNET     GetInfoResponse_Network = 2
	GetInfoResponse_NETWORK_REGTEST     GetInfoResponse_Network = 3
)

// Enum value maps for GetInfoResponse_Network.
var (
	GetInfoResponse_Network_name = map[int32]string{
		0: "NETWORK_UNSPECIFIED",
		1: "NETWORK_MAINNET",
		2: "NETWORK_TESTNET",
		3: "NETWORK_REGTEST",
	}
	GetInfoResponse_Network_value = map[string]int32{
		"NETWORK_UNSPECIFIED": 0,
		"NETWORK_MAINNET":     1,
		"NETWORK_TESTNET":     2,
		"NETWORK_REGTEST":     3,
	}
)

func (x GetInfoResponse_Network) Enum() *GetInfoResponse_Network {
	p := new(GetInfoResponse_Network)
	*p = x
	return p
}

func (x GetInfoResponse_Network) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (GetInfoResponse_Network) Descriptor() protoreflect.EnumDescriptor {
	return file_fulmine_v1_service_proto_enumTypes[0].Descriptor()
}

func (GetInfoResponse_Network) Type() protoreflect.EnumType {
	return &file_fulmine_v1_service_proto_enumTypes[0]
}

func (x GetInfoResponse_Network) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use GetInfoResponse_Network.Descriptor instead.
func (GetInfoResponse_Network) EnumDescriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{5, 0}
}

type RelativeLocktime_LocktimeType int32

const (
	RelativeLocktime_LOCKTIME_TYPE_UNSPECIFIED RelativeLocktime_LocktimeType = 0
	RelativeLocktime_LOCKTIME_TYPE_BLOCK       RelativeLocktime_LocktimeType = 1
	RelativeLocktime_LOCKTIME_TYPE_SECOND      RelativeLocktime_LocktimeType = 2
)

// Enum value maps for RelativeLocktime_LocktimeType.
var (
	RelativeLocktime_LocktimeType_name = map[int32]string{
		0: "LOCKTIME_TYPE_UNSPECIFIED",
		1: "LOCKTIME_TYPE_BLOCK",
		2: "LOCKTIME_TYPE_SECOND",
	}
	RelativeLocktime_LocktimeType_value = map[string]int32{
		"LOCKTIME_TYPE_UNSPECIFIED": 0,
		"LOCKTIME_TYPE_BLOCK":       1,
		"LOCKTIME_TYPE_SECOND":      2,
	}
)

func (x RelativeLocktime_LocktimeType) Enum() *RelativeLocktime_LocktimeType {
	p := new(RelativeLocktime_LocktimeType)
	*p = x
	return p
}

func (x RelativeLocktime_LocktimeType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (RelativeLocktime_LocktimeType) Descriptor() protoreflect.EnumDescriptor {
	return file_fulmine_v1_service_proto_enumTypes[1].Descriptor()
}

func (RelativeLocktime_LocktimeType) Type() protoreflect.EnumType {
	return &file_fulmine_v1_service_proto_enumTypes[1]
}

func (x RelativeLocktime_LocktimeType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use RelativeLocktime_LocktimeType.Descriptor instead.
func (RelativeLocktime_LocktimeType) EnumDescriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{38, 0}
}

type GetAddressRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *GetAddressRequest) Reset() {
	*x = GetAddressRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[0]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetAddressRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetAddressRequest) ProtoMessage() {}

func (x *GetAddressRequest) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 GetAddressRequest.ProtoReflect.Descriptor instead.
func (*GetAddressRequest) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{0}
}

type GetAddressResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	Pubkey  string `protobuf:"bytes,2,opt,name=pubkey,proto3" json:"pubkey,omitempty"`
}

func (x *GetAddressResponse) Reset() {
	*x = GetAddressResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[1]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetAddressResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetAddressResponse) ProtoMessage() {}

func (x *GetAddressResponse) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 GetAddressResponse.ProtoReflect.Descriptor instead.
func (*GetAddressResponse) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{1}
}

func (x *GetAddressResponse) GetAddress() string {
	if x != nil {
		return x.Address
	}
	return ""
}

func (x *GetAddressResponse) GetPubkey() string {
	if x != nil {
		return x.Pubkey
	}
	return ""
}

type GetBalanceRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *GetBalanceRequest) Reset() {
	*x = GetBalanceRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[2]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetBalanceRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetBalanceRequest) ProtoMessage() {}

func (x *GetBalanceRequest) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 GetBalanceRequest.ProtoReflect.Descriptor instead.
func (*GetBalanceRequest) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{2}
}

type GetBalanceResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Amount uint64 `protobuf:"varint,1,opt,name=amount,proto3" json:"amount,omitempty"`
}

func (x *GetBalanceResponse) Reset() {
	*x = GetBalanceResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[3]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetBalanceResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetBalanceResponse) ProtoMessage() {}

func (x *GetBalanceResponse) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 GetBalanceResponse.ProtoReflect.Descriptor instead.
func (*GetBalanceResponse) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{3}
}

func (x *GetBalanceResponse) GetAmount() uint64 {
	if x != nil {
		return x.Amount
	}
	return 0
}

type GetInfoRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *GetInfoRequest) Reset() {
	*x = GetInfoRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[4]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetInfoRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetInfoRequest) ProtoMessage() {}

func (x *GetInfoRequest) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 GetInfoRequest.ProtoReflect.Descriptor instead.
func (*GetInfoRequest) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{4}
}

type GetInfoResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// The bitcoin network on which Fulmine is runnig.
	Network GetInfoResponse_Network `protobuf:"varint,1,opt,name=network,proto3,enum=fulmine.v1.GetInfoResponse_Network" json:"network,omitempty"`
	// The ark address prefix (ark | tark).
	AddrPrefix string `protobuf:"bytes,2,opt,name=addr_prefix,json=addrPrefix,proto3" json:"addr_prefix,omitempty"`
	// The URL of the server to which Fulmine is connected to if already initialized.
	ServerUrl string `protobuf:"bytes,3,opt,name=server_url,json=serverUrl,proto3" json:"server_url,omitempty"`
	// info about the current version of the ark wallet.
	BuildInfo *BuildInfo `protobuf:"bytes,4,opt,name=build_info,json=buildInfo,proto3" json:"build_info,omitempty"`
	// The Fulmine's public key used in VTXO scripts.
	Pubkey string `protobuf:"bytes,5,opt,name=pubkey,proto3" json:"pubkey,omitempty"`
	// The signer's public key used in VTXO scripts.
	SignerPubkey string `protobuf:"bytes,6,opt,name=signer_pubkey,json=signerPubkey,proto3" json:"signer_pubkey,omitempty"`
}

func (x *GetInfoResponse) Reset() {
	*x = GetInfoResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[5]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetInfoResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetInfoResponse) ProtoMessage() {}

func (x *GetInfoResponse) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 GetInfoResponse.ProtoReflect.Descriptor instead.
func (*GetInfoResponse) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{5}
}

func (x *GetInfoResponse) GetNetwork() GetInfoResponse_Network {
	if x != nil {
		return x.Network
	}
	return GetInfoResponse_NETWORK_UNSPECIFIED
}

func (x *GetInfoResponse) GetAddrPrefix() string {
	if x != nil {
		return x.AddrPrefix
	}
	return ""
}

func (x *GetInfoResponse) GetServerUrl() string {
	if x != nil {
		return x.ServerUrl
	}
	return ""
}

func (x *GetInfoResponse) GetBuildInfo() *BuildInfo {
	if x != nil {
		return x.BuildInfo
	}
	return nil
}

func (x *GetInfoResponse) GetPubkey() string {
	if x != nil {
		return x.Pubkey
	}
	return ""
}

func (x *GetInfoResponse) GetSignerPubkey() string {
	if x != nil {
		return x.SignerPubkey
	}
	return ""
}

type GetOnboardAddressRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Amount uint64 `protobuf:"varint,1,opt,name=amount,proto3" json:"amount,omitempty"`
}

func (x *GetOnboardAddressRequest) Reset() {
	*x = GetOnboardAddressRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[6]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetOnboardAddressRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetOnboardAddressRequest) ProtoMessage() {}

func (x *GetOnboardAddressRequest) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 GetOnboardAddressRequest.ProtoReflect.Descriptor instead.
func (*GetOnboardAddressRequest) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{6}
}

func (x *GetOnboardAddressRequest) GetAmount() uint64 {
	if x != nil {
		return x.Amount
	}
	return 0
}

type GetOnboardAddressResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
}

func (x *GetOnboardAddressResponse) Reset() {
	*x = GetOnboardAddressResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[7]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetOnboardAddressResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetOnboardAddressResponse) ProtoMessage() {}

func (x *GetOnboardAddressResponse) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 GetOnboardAddressResponse.ProtoReflect.Descriptor instead.
func (*GetOnboardAddressResponse) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{7}
}

func (x *GetOnboardAddressResponse) GetAddress() string {
	if x != nil {
		return x.Address
	}
	return ""
}

type GetRoundInfoRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	RoundId string `protobuf:"bytes,1,opt,name=round_id,json=roundId,proto3" json:"round_id,omitempty"`
}

func (x *GetRoundInfoRequest) Reset() {
	*x = GetRoundInfoRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[8]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetRoundInfoRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetRoundInfoRequest) ProtoMessage() {}

func (x *GetRoundInfoRequest) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 GetRoundInfoRequest.ProtoReflect.Descriptor instead.
func (*GetRoundInfoRequest) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{8}
}

func (x *GetRoundInfoRequest) GetRoundId() string {
	if x != nil {
		return x.RoundId
	}
	return ""
}

type GetRoundInfoResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Round *Round `protobuf:"bytes,1,opt,name=round,proto3" json:"round,omitempty"`
}

func (x *GetRoundInfoResponse) Reset() {
	*x = GetRoundInfoResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[9]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetRoundInfoResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetRoundInfoResponse) ProtoMessage() {}

func (x *GetRoundInfoResponse) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 GetRoundInfoResponse.ProtoReflect.Descriptor instead.
func (*GetRoundInfoResponse) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{9}
}

func (x *GetRoundInfoResponse) GetRound() *Round {
	if x != nil {
		return x.Round
	}
	return nil
}

type GetTransactionHistoryRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *GetTransactionHistoryRequest) Reset() {
	*x = GetTransactionHistoryRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[10]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetTransactionHistoryRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetTransactionHistoryRequest) ProtoMessage() {}

func (x *GetTransactionHistoryRequest) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 GetTransactionHistoryRequest.ProtoReflect.Descriptor instead.
func (*GetTransactionHistoryRequest) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{10}
}

type GetTransactionHistoryResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Transactions []*TransactionInfo `protobuf:"bytes,1,rep,name=transactions,proto3" json:"transactions,omitempty"`
}

func (x *GetTransactionHistoryResponse) Reset() {
	*x = GetTransactionHistoryResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[11]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetTransactionHistoryResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetTransactionHistoryResponse) ProtoMessage() {}

func (x *GetTransactionHistoryResponse) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 GetTransactionHistoryResponse.ProtoReflect.Descriptor instead.
func (*GetTransactionHistoryResponse) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{11}
}

func (x *GetTransactionHistoryResponse) GetTransactions() []*TransactionInfo {
	if x != nil {
		return x.Transactions
	}
	return nil
}

type RedeemNoteRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Note string `protobuf:"bytes,1,opt,name=note,proto3" json:"note,omitempty"`
}

func (x *RedeemNoteRequest) Reset() {
	*x = RedeemNoteRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[12]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RedeemNoteRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RedeemNoteRequest) ProtoMessage() {}

func (x *RedeemNoteRequest) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 RedeemNoteRequest.ProtoReflect.Descriptor instead.
func (*RedeemNoteRequest) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{12}
}

func (x *RedeemNoteRequest) GetNote() string {
	if x != nil {
		return x.Note
	}
	return ""
}

type RedeemNoteResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Txid string `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
}

func (x *RedeemNoteResponse) Reset() {
	*x = RedeemNoteResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[13]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RedeemNoteResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RedeemNoteResponse) ProtoMessage() {}

func (x *RedeemNoteResponse) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 RedeemNoteResponse.ProtoReflect.Descriptor instead.
func (*RedeemNoteResponse) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{13}
}

func (x *RedeemNoteResponse) GetTxid() string {
	if x != nil {
		return x.Txid
	}
	return ""
}

type SettleRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *SettleRequest) Reset() {
	*x = SettleRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[14]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SettleRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SettleRequest) ProtoMessage() {}

func (x *SettleRequest) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 SettleRequest.ProtoReflect.Descriptor instead.
func (*SettleRequest) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{14}
}

type SettleResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Txid string `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
}

func (x *SettleResponse) Reset() {
	*x = SettleResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[15]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SettleResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SettleResponse) ProtoMessage() {}

func (x *SettleResponse) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 SettleResponse.ProtoReflect.Descriptor instead.
func (*SettleResponse) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{15}
}

func (x *SettleResponse) GetTxid() string {
	if x != nil {
		return x.Txid
	}
	return ""
}

type SendOffChainRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	Amount  uint64 `protobuf:"varint,2,opt,name=amount,proto3" json:"amount,omitempty"`
}

func (x *SendOffChainRequest) Reset() {
	*x = SendOffChainRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[16]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SendOffChainRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SendOffChainRequest) ProtoMessage() {}

func (x *SendOffChainRequest) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 SendOffChainRequest.ProtoReflect.Descriptor instead.
func (*SendOffChainRequest) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{16}
}

func (x *SendOffChainRequest) GetAddress() string {
	if x != nil {
		return x.Address
	}
	return ""
}

func (x *SendOffChainRequest) GetAmount() uint64 {
	if x != nil {
		return x.Amount
	}
	return 0
}

type SendOffChainResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Txid string `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
}

func (x *SendOffChainResponse) Reset() {
	*x = SendOffChainResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[17]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SendOffChainResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SendOffChainResponse) ProtoMessage() {}

func (x *SendOffChainResponse) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 SendOffChainResponse.ProtoReflect.Descriptor instead.
func (*SendOffChainResponse) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{17}
}

func (x *SendOffChainResponse) GetTxid() string {
	if x != nil {
		return x.Txid
	}
	return ""
}

type SendOnChainRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	Amount  uint64 `protobuf:"varint,2,opt,name=amount,proto3" json:"amount,omitempty"`
}

func (x *SendOnChainRequest) Reset() {
	*x = SendOnChainRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[18]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SendOnChainRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SendOnChainRequest) ProtoMessage() {}

func (x *SendOnChainRequest) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 SendOnChainRequest.ProtoReflect.Descriptor instead.
func (*SendOnChainRequest) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{18}
}

func (x *SendOnChainRequest) GetAddress() string {
	if x != nil {
		return x.Address
	}
	return ""
}

func (x *SendOnChainRequest) GetAmount() uint64 {
	if x != nil {
		return x.Amount
	}
	return 0
}

type SendOnChainResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Txid string `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
}

func (x *SendOnChainResponse) Reset() {
	*x = SendOnChainResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[19]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SendOnChainResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SendOnChainResponse) ProtoMessage() {}

func (x *SendOnChainResponse) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 SendOnChainResponse.ProtoReflect.Descriptor instead.
func (*SendOnChainResponse) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{19}
}

func (x *SendOnChainResponse) GetTxid() string {
	if x != nil {
		return x.Txid
	}
	return ""
}

type SignTransactionRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Tx string `protobuf:"bytes,1,opt,name=tx,proto3" json:"tx,omitempty"`
}

func (x *SignTransactionRequest) Reset() {
	*x = SignTransactionRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[20]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SignTransactionRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SignTransactionRequest) ProtoMessage() {}

func (x *SignTransactionRequest) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 SignTransactionRequest.ProtoReflect.Descriptor instead.
func (*SignTransactionRequest) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{20}
}

func (x *SignTransactionRequest) GetTx() string {
	if x != nil {
		return x.Tx
	}
	return ""
}

type SignTransactionResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	SignedTx string `protobuf:"bytes,1,opt,name=signed_tx,json=signedTx,proto3" json:"signed_tx,omitempty"`
}

func (x *SignTransactionResponse) Reset() {
	*x = SignTransactionResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[21]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SignTransactionResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SignTransactionResponse) ProtoMessage() {}

func (x *SignTransactionResponse) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 SignTransactionResponse.ProtoReflect.Descriptor instead.
func (*SignTransactionResponse) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{21}
}

func (x *SignTransactionResponse) GetSignedTx() string {
	if x != nil {
		return x.SignedTx
	}
	return ""
}

type CreateVHTLCRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PreimageHash   string `protobuf:"bytes,1,opt,name=preimage_hash,json=preimageHash,proto3" json:"preimage_hash,omitempty"`
	SenderPubkey   string `protobuf:"bytes,2,opt,name=sender_pubkey,json=senderPubkey,proto3" json:"sender_pubkey,omitempty"`
	ReceiverPubkey string `protobuf:"bytes,3,opt,name=receiver_pubkey,json=receiverPubkey,proto3" json:"receiver_pubkey,omitempty"`
	// Optional absolute locktime for refund condition (in blocks)
	RefundLocktime uint32 `protobuf:"varint,4,opt,name=refund_locktime,json=refundLocktime,proto3" json:"refund_locktime,omitempty"`
	// Optional unilateral claim delay (relative timelock)
	UnilateralClaimDelay *RelativeLocktime `protobuf:"bytes,5,opt,name=unilateral_claim_delay,json=unilateralClaimDelay,proto3" json:"unilateral_claim_delay,omitempty"`
	// Optional unilateral refund delay (relative timelock)
	UnilateralRefundDelay *RelativeLocktime `protobuf:"bytes,6,opt,name=unilateral_refund_delay,json=unilateralRefundDelay,proto3" json:"unilateral_refund_delay,omitempty"`
	// Optional unilateral refund without receiver delay (relative timelock)
	UnilateralRefundWithoutReceiverDelay *RelativeLocktime `protobuf:"bytes,7,opt,name=unilateral_refund_without_receiver_delay,json=unilateralRefundWithoutReceiverDelay,proto3" json:"unilateral_refund_without_receiver_delay,omitempty"`
}

func (x *CreateVHTLCRequest) Reset() {
	*x = CreateVHTLCRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[22]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateVHTLCRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateVHTLCRequest) ProtoMessage() {}

func (x *CreateVHTLCRequest) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 CreateVHTLCRequest.ProtoReflect.Descriptor instead.
func (*CreateVHTLCRequest) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{22}
}

func (x *CreateVHTLCRequest) GetPreimageHash() string {
	if x != nil {
		return x.PreimageHash
	}
	return ""
}

func (x *CreateVHTLCRequest) GetSenderPubkey() string {
	if x != nil {
		return x.SenderPubkey
	}
	return ""
}

func (x *CreateVHTLCRequest) GetReceiverPubkey() string {
	if x != nil {
		return x.ReceiverPubkey
	}
	return ""
}

func (x *CreateVHTLCRequest) GetRefundLocktime() uint32 {
	if x != nil {
		return x.RefundLocktime
	}
	return 0
}

func (x *CreateVHTLCRequest) GetUnilateralClaimDelay() *RelativeLocktime {
	if x != nil {
		return x.UnilateralClaimDelay
	}
	return nil
}

func (x *CreateVHTLCRequest) GetUnilateralRefundDelay() *RelativeLocktime {
	if x != nil {
		return x.UnilateralRefundDelay
	}
	return nil
}

func (x *CreateVHTLCRequest) GetUnilateralRefundWithoutReceiverDelay() *RelativeLocktime {
	if x != nil {
		return x.UnilateralRefundWithoutReceiverDelay
	}
	return nil
}

type CreateVHTLCResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Address                              string       `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	ClaimPubkey                          string       `protobuf:"bytes,2,opt,name=claim_pubkey,json=claimPubkey,proto3" json:"claim_pubkey,omitempty"`
	RefundPubkey                         string       `protobuf:"bytes,3,opt,name=refund_pubkey,json=refundPubkey,proto3" json:"refund_pubkey,omitempty"`
	ServerPubkey                         string       `protobuf:"bytes,4,opt,name=server_pubkey,json=serverPubkey,proto3" json:"server_pubkey,omitempty"`
	SwapTree                             *TaprootTree `protobuf:"bytes,5,opt,name=swap_tree,json=swapTree,proto3" json:"swap_tree,omitempty"`
	RefundLocktime                       int64        `protobuf:"varint,6,opt,name=refund_locktime,json=refundLocktime,proto3" json:"refund_locktime,omitempty"`
	UnilateralClaimDelay                 int64        `protobuf:"varint,7,opt,name=unilateral_claim_delay,json=unilateralClaimDelay,proto3" json:"unilateral_claim_delay,omitempty"`
	UnilateralRefundDelay                int64        `protobuf:"varint,8,opt,name=unilateral_refund_delay,json=unilateralRefundDelay,proto3" json:"unilateral_refund_delay,omitempty"`
	UnilateralRefundWithoutReceiverDelay int64        `protobuf:"varint,9,opt,name=unilateral_refund_without_receiver_delay,json=unilateralRefundWithoutReceiverDelay,proto3" json:"unilateral_refund_without_receiver_delay,omitempty"`
}

func (x *CreateVHTLCResponse) Reset() {
	*x = CreateVHTLCResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[23]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateVHTLCResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateVHTLCResponse) ProtoMessage() {}

func (x *CreateVHTLCResponse) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 CreateVHTLCResponse.ProtoReflect.Descriptor instead.
func (*CreateVHTLCResponse) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{23}
}

func (x *CreateVHTLCResponse) GetAddress() string {
	if x != nil {
		return x.Address
	}
	return ""
}

func (x *CreateVHTLCResponse) GetClaimPubkey() string {
	if x != nil {
		return x.ClaimPubkey
	}
	return ""
}

func (x *CreateVHTLCResponse) GetRefundPubkey() string {
	if x != nil {
		return x.RefundPubkey
	}
	return ""
}

func (x *CreateVHTLCResponse) GetServerPubkey() string {
	if x != nil {
		return x.ServerPubkey
	}
	return ""
}

func (x *CreateVHTLCResponse) GetSwapTree() *TaprootTree {
	if x != nil {
		return x.SwapTree
	}
	return nil
}

func (x *CreateVHTLCResponse) GetRefundLocktime() int64 {
	if x != nil {
		return x.RefundLocktime
	}
	return 0
}

func (x *CreateVHTLCResponse) GetUnilateralClaimDelay() int64 {
	if x != nil {
		return x.UnilateralClaimDelay
	}
	return 0
}

func (x *CreateVHTLCResponse) GetUnilateralRefundDelay() int64 {
	if x != nil {
		return x.UnilateralRefundDelay
	}
	return 0
}

func (x *CreateVHTLCResponse) GetUnilateralRefundWithoutReceiverDelay() int64 {
	if x != nil {
		return x.UnilateralRefundWithoutReceiverDelay
	}
	return 0
}

type ClaimVHTLCRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Preimage string `protobuf:"bytes,1,opt,name=preimage,proto3" json:"preimage,omitempty"`
}

func (x *ClaimVHTLCRequest) Reset() {
	*x = ClaimVHTLCRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[24]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ClaimVHTLCRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ClaimVHTLCRequest) ProtoMessage() {}

func (x *ClaimVHTLCRequest) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 ClaimVHTLCRequest.ProtoReflect.Descriptor instead.
func (*ClaimVHTLCRequest) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{24}
}

func (x *ClaimVHTLCRequest) GetPreimage() string {
	if x != nil {
		return x.Preimage
	}
	return ""
}

type ClaimVHTLCResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	RedeemTxid string `protobuf:"bytes,1,opt,name=redeem_txid,json=redeemTxid,proto3" json:"redeem_txid,omitempty"`
}

func (x *ClaimVHTLCResponse) Reset() {
	*x = ClaimVHTLCResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[25]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ClaimVHTLCResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ClaimVHTLCResponse) ProtoMessage() {}

func (x *ClaimVHTLCResponse) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 ClaimVHTLCResponse.ProtoReflect.Descriptor instead.
func (*ClaimVHTLCResponse) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{25}
}

func (x *ClaimVHTLCResponse) GetRedeemTxid() string {
	if x != nil {
		return x.RedeemTxid
	}
	return ""
}

type RefundVHTLCWithoutReceiverRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PreimageHash string `protobuf:"bytes,1,opt,name=preimage_hash,json=preimageHash,proto3" json:"preimage_hash,omitempty"`
}

func (x *RefundVHTLCWithoutReceiverRequest) Reset() {
	*x = RefundVHTLCWithoutReceiverRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[26]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RefundVHTLCWithoutReceiverRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RefundVHTLCWithoutReceiverRequest) ProtoMessage() {}

func (x *RefundVHTLCWithoutReceiverRequest) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 RefundVHTLCWithoutReceiverRequest.ProtoReflect.Descriptor instead.
func (*RefundVHTLCWithoutReceiverRequest) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{26}
}

func (x *RefundVHTLCWithoutReceiverRequest) GetPreimageHash() string {
	if x != nil {
		return x.PreimageHash
	}
	return ""
}

type RefundVHTLCWithoutReceiverResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	RedeemTxid string `protobuf:"bytes,1,opt,name=redeem_txid,json=redeemTxid,proto3" json:"redeem_txid,omitempty"`
}

func (x *RefundVHTLCWithoutReceiverResponse) Reset() {
	*x = RefundVHTLCWithoutReceiverResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[27]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RefundVHTLCWithoutReceiverResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RefundVHTLCWithoutReceiverResponse) ProtoMessage() {}

func (x *RefundVHTLCWithoutReceiverResponse) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 RefundVHTLCWithoutReceiverResponse.ProtoReflect.Descriptor instead.
func (*RefundVHTLCWithoutReceiverResponse) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{27}
}

func (x *RefundVHTLCWithoutReceiverResponse) GetRedeemTxid() string {
	if x != nil {
		return x.RedeemTxid
	}
	return ""
}

type ListVHTLCRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PreimageHashFilter string `protobuf:"bytes,1,opt,name=preimage_hash_filter,json=preimageHashFilter,proto3" json:"preimage_hash_filter,omitempty"`
}

func (x *ListVHTLCRequest) Reset() {
	*x = ListVHTLCRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[28]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListVHTLCRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListVHTLCRequest) ProtoMessage() {}

func (x *ListVHTLCRequest) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 ListVHTLCRequest.ProtoReflect.Descriptor instead.
func (*ListVHTLCRequest) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{28}
}

func (x *ListVHTLCRequest) GetPreimageHashFilter() string {
	if x != nil {
		return x.PreimageHashFilter
	}
	return ""
}

type ListVHTLCResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Vhtlcs []*Vtxo `protobuf:"bytes,1,rep,name=vhtlcs,proto3" json:"vhtlcs,omitempty"`
}

func (x *ListVHTLCResponse) Reset() {
	*x = ListVHTLCResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[29]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListVHTLCResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListVHTLCResponse) ProtoMessage() {}

func (x *ListVHTLCResponse) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 ListVHTLCResponse.ProtoReflect.Descriptor instead.
func (*ListVHTLCResponse) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{29}
}

func (x *ListVHTLCResponse) GetVhtlcs() []*Vtxo {
	if x != nil {
		return x.Vhtlcs
	}
	return nil
}

type GetInvoiceRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Amount uint64 `protobuf:"varint,1,opt,name=amount,proto3" json:"amount,omitempty"`
}

func (x *GetInvoiceRequest) Reset() {
	*x = GetInvoiceRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[30]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetInvoiceRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetInvoiceRequest) ProtoMessage() {}

func (x *GetInvoiceRequest) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 GetInvoiceRequest.ProtoReflect.Descriptor instead.
func (*GetInvoiceRequest) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{30}
}

func (x *GetInvoiceRequest) GetAmount() uint64 {
	if x != nil {
		return x.Amount
	}
	return 0
}

type GetInvoiceResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Invoice string `protobuf:"bytes,1,opt,name=invoice,proto3" json:"invoice,omitempty"`
}

func (x *GetInvoiceResponse) Reset() {
	*x = GetInvoiceResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[31]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetInvoiceResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetInvoiceResponse) ProtoMessage() {}

func (x *GetInvoiceResponse) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 GetInvoiceResponse.ProtoReflect.Descriptor instead.
func (*GetInvoiceResponse) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{31}
}

func (x *GetInvoiceResponse) GetInvoice() string {
	if x != nil {
		return x.Invoice
	}
	return ""
}

type PayInvoiceRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Invoice string `protobuf:"bytes,1,opt,name=invoice,proto3" json:"invoice,omitempty"`
}

func (x *PayInvoiceRequest) Reset() {
	*x = PayInvoiceRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[32]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *PayInvoiceRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PayInvoiceRequest) ProtoMessage() {}

func (x *PayInvoiceRequest) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 PayInvoiceRequest.ProtoReflect.Descriptor instead.
func (*PayInvoiceRequest) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{32}
}

func (x *PayInvoiceRequest) GetInvoice() string {
	if x != nil {
		return x.Invoice
	}
	return ""
}

type PayInvoiceResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Txid string `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
}

func (x *PayInvoiceResponse) Reset() {
	*x = PayInvoiceResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[33]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *PayInvoiceResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PayInvoiceResponse) ProtoMessage() {}

func (x *PayInvoiceResponse) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 PayInvoiceResponse.ProtoReflect.Descriptor instead.
func (*PayInvoiceResponse) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{33}
}

func (x *PayInvoiceResponse) GetTxid() string {
	if x != nil {
		return x.Txid
	}
	return ""
}

type TaprootTree struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ClaimLeaf                        *TaprootLeaf `protobuf:"bytes,1,opt,name=claim_leaf,json=claimLeaf,proto3" json:"claim_leaf,omitempty"`
	RefundLeaf                       *TaprootLeaf `protobuf:"bytes,2,opt,name=refund_leaf,json=refundLeaf,proto3" json:"refund_leaf,omitempty"`
	RefundWithoutBoltzLeaf           *TaprootLeaf `protobuf:"bytes,3,opt,name=refund_without_boltz_leaf,json=refundWithoutBoltzLeaf,proto3" json:"refund_without_boltz_leaf,omitempty"`
	UnilateralClaimLeaf              *TaprootLeaf `protobuf:"bytes,4,opt,name=unilateral_claim_leaf,json=unilateralClaimLeaf,proto3" json:"unilateral_claim_leaf,omitempty"`
	UnilateralRefundLeaf             *TaprootLeaf `protobuf:"bytes,5,opt,name=unilateral_refund_leaf,json=unilateralRefundLeaf,proto3" json:"unilateral_refund_leaf,omitempty"`
	UnilateralRefundWithoutBoltzLeaf *TaprootLeaf `protobuf:"bytes,6,opt,name=unilateral_refund_without_boltz_leaf,json=unilateralRefundWithoutBoltzLeaf,proto3" json:"unilateral_refund_without_boltz_leaf,omitempty"`
}

func (x *TaprootTree) Reset() {
	*x = TaprootTree{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[34]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *TaprootTree) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TaprootTree) ProtoMessage() {}

func (x *TaprootTree) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 TaprootTree.ProtoReflect.Descriptor instead.
func (*TaprootTree) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{34}
}

func (x *TaprootTree) GetClaimLeaf() *TaprootLeaf {
	if x != nil {
		return x.ClaimLeaf
	}
	return nil
}

func (x *TaprootTree) GetRefundLeaf() *TaprootLeaf {
	if x != nil {
		return x.RefundLeaf
	}
	return nil
}

func (x *TaprootTree) GetRefundWithoutBoltzLeaf() *TaprootLeaf {
	if x != nil {
		return x.RefundWithoutBoltzLeaf
	}
	return nil
}

func (x *TaprootTree) GetUnilateralClaimLeaf() *TaprootLeaf {
	if x != nil {
		return x.UnilateralClaimLeaf
	}
	return nil
}

func (x *TaprootTree) GetUnilateralRefundLeaf() *TaprootLeaf {
	if x != nil {
		return x.UnilateralRefundLeaf
	}
	return nil
}

func (x *TaprootTree) GetUnilateralRefundWithoutBoltzLeaf() *TaprootLeaf {
	if x != nil {
		return x.UnilateralRefundWithoutBoltzLeaf
	}
	return nil
}

type TaprootLeaf struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Version int32  `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"`
	Output  string `protobuf:"bytes,2,opt,name=output,proto3" json:"output,omitempty"`
}

func (x *TaprootLeaf) Reset() {
	*x = TaprootLeaf{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[35]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *TaprootLeaf) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TaprootLeaf) ProtoMessage() {}

func (x *TaprootLeaf) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 TaprootLeaf.ProtoReflect.Descriptor instead.
func (*TaprootLeaf) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{35}
}

func (x *TaprootLeaf) GetVersion() int32 {
	if x != nil {
		return x.Version
	}
	return 0
}

func (x *TaprootLeaf) GetOutput() string {
	if x != nil {
		return x.Output
	}
	return ""
}

type IsInvoiceSettledRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Invoice string `protobuf:"bytes,1,opt,name=invoice,proto3" json:"invoice,omitempty"`
}

func (x *IsInvoiceSettledRequest) Reset() {
	*x = IsInvoiceSettledRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[36]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *IsInvoiceSettledRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*IsInvoiceSettledRequest) ProtoMessage() {}

func (x *IsInvoiceSettledRequest) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 IsInvoiceSettledRequest.ProtoReflect.Descriptor instead.
func (*IsInvoiceSettledRequest) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{36}
}

func (x *IsInvoiceSettledRequest) GetInvoice() string {
	if x != nil {
		return x.Invoice
	}
	return ""
}

type IsInvoiceSettledResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Settled bool `protobuf:"varint,1,opt,name=settled,proto3" json:"settled,omitempty"`
}

func (x *IsInvoiceSettledResponse) Reset() {
	*x = IsInvoiceSettledResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[37]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *IsInvoiceSettledResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*IsInvoiceSettledResponse) ProtoMessage() {}

func (x *IsInvoiceSettledResponse) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 IsInvoiceSettledResponse.ProtoReflect.Descriptor instead.
func (*IsInvoiceSettledResponse) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{37}
}

func (x *IsInvoiceSettledResponse) GetSettled() bool {
	if x != nil {
		return x.Settled
	}
	return false
}

// RelativeLocktime represents a relative timelock
type RelativeLocktime struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Type  RelativeLocktime_LocktimeType `protobuf:"varint,1,opt,name=type,proto3,enum=fulmine.v1.RelativeLocktime_LocktimeType" json:"type,omitempty"`
	Value uint32                        `protobuf:"varint,2,opt,name=value,proto3" json:"value,omitempty"`
}

func (x *RelativeLocktime) Reset() {
	*x = RelativeLocktime{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[38]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RelativeLocktime) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RelativeLocktime) ProtoMessage() {}

func (x *RelativeLocktime) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 RelativeLocktime.ProtoReflect.Descriptor instead.
func (*RelativeLocktime) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{38}
}

func (x *RelativeLocktime) GetType() RelativeLocktime_LocktimeType {
	if x != nil {
		return x.Type
	}
	return RelativeLocktime_LOCKTIME_TYPE_UNSPECIFIED
}

func (x *RelativeLocktime) GetValue() uint32 {
	if x != nil {
		return x.Value
	}
	return 0
}

// Request for getting the delegate public key. No fields required.
type GetDelegatePublicKeyRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *GetDelegatePublicKeyRequest) Reset() {
	*x = GetDelegatePublicKeyRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[39]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetDelegatePublicKeyRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetDelegatePublicKeyRequest) ProtoMessage() {}

func (x *GetDelegatePublicKeyRequest) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 GetDelegatePublicKeyRequest.ProtoReflect.Descriptor instead.
func (*GetDelegatePublicKeyRequest) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{39}
}

// Response containing the delegate public key.
type GetDelegatePublicKeyResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// The Fulmine's public key to be used for delegate operations, encoded in hex
	PublicKey string `protobuf:"bytes,1,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"`
}

func (x *GetDelegatePublicKeyResponse) Reset() {
	*x = GetDelegatePublicKeyResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[40]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetDelegatePublicKeyResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetDelegatePublicKeyResponse) ProtoMessage() {}

func (x *GetDelegatePublicKeyResponse) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 GetDelegatePublicKeyResponse.ProtoReflect.Descriptor instead.
func (*GetDelegatePublicKeyResponse) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{40}
}

func (x *GetDelegatePublicKeyResponse) GetPublicKey() string {
	if x != nil {
		return x.PublicKey
	}
	return ""
}

type WatchAddressForRolloverRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	RolloverAddress *RolloverAddress `protobuf:"bytes,1,opt,name=rollover_address,json=rolloverAddress,proto3" json:"rollover_address,omitempty"`
}

func (x *WatchAddressForRolloverRequest) Reset() {
	*x = WatchAddressForRolloverRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[41]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *WatchAddressForRolloverRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*WatchAddressForRolloverRequest) ProtoMessage() {}

func (x *WatchAddressForRolloverRequest) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 WatchAddressForRolloverRequest.ProtoReflect.Descriptor instead.
func (*WatchAddressForRolloverRequest) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{41}
}

func (x *WatchAddressForRolloverRequest) GetRolloverAddress() *RolloverAddress {
	if x != nil {
		return x.RolloverAddress
	}
	return nil
}

type WatchAddressForRolloverResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *WatchAddressForRolloverResponse) Reset() {
	*x = WatchAddressForRolloverResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[42]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *WatchAddressForRolloverResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*WatchAddressForRolloverResponse) ProtoMessage() {}

func (x *WatchAddressForRolloverResponse) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 WatchAddressForRolloverResponse.ProtoReflect.Descriptor instead.
func (*WatchAddressForRolloverResponse) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{42}
}

type UnwatchAddressRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` // The address to stop watching
}

func (x *UnwatchAddressRequest) Reset() {
	*x = UnwatchAddressRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[43]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UnwatchAddressRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UnwatchAddressRequest) ProtoMessage() {}

func (x *UnwatchAddressRequest) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 UnwatchAddressRequest.ProtoReflect.Descriptor instead.
func (*UnwatchAddressRequest) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{43}
}

func (x *UnwatchAddressRequest) GetAddress() string {
	if x != nil {
		return x.Address
	}
	return ""
}

type UnwatchAddressResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *UnwatchAddressResponse) Reset() {
	*x = UnwatchAddressResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[44]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UnwatchAddressResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UnwatchAddressResponse) ProtoMessage() {}

func (x *UnwatchAddressResponse) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 UnwatchAddressResponse.ProtoReflect.Descriptor instead.
func (*UnwatchAddressResponse) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{44}
}

type ListWatchedAddressesRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ListWatchedAddressesRequest) Reset() {
	*x = ListWatchedAddressesRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[45]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListWatchedAddressesRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListWatchedAddressesRequest) ProtoMessage() {}

func (x *ListWatchedAddressesRequest) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 ListWatchedAddressesRequest.ProtoReflect.Descriptor instead.
func (*ListWatchedAddressesRequest) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{45}
}

type ListWatchedAddressesResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Addresses []*RolloverAddress `protobuf:"bytes,1,rep,name=addresses,proto3" json:"addresses,omitempty"` // List of all watched addresses
}

func (x *ListWatchedAddressesResponse) Reset() {
	*x = ListWatchedAddressesResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[46]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListWatchedAddressesResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListWatchedAddressesResponse) ProtoMessage() {}

func (x *ListWatchedAddressesResponse) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_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 ListWatchedAddressesResponse.ProtoReflect.Descriptor instead.
func (*ListWatchedAddressesResponse) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{46}
}

func (x *ListWatchedAddressesResponse) GetAddresses() []*RolloverAddress {
	if x != nil {
		return x.Addresses
	}
	return nil
}

type RolloverAddress struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Address            string      `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`                                                 // The watched address
	TaprootTree        *Tapscripts `protobuf:"bytes,2,opt,name=taproot_tree,json=taprootTree,proto3" json:"taproot_tree,omitempty"`                      // Full taproot tree as list of hex tapscripts
	DestinationAddress string      `protobuf:"bytes,3,opt,name=destination_address,json=destinationAddress,proto3" json:"destination_address,omitempty"` // Where funds will be rolled over to
}

func (x *RolloverAddress) Reset() {
	*x = RolloverAddress{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[47]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RolloverAddress) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RolloverAddress) ProtoMessage() {}

func (x *RolloverAddress) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_proto_msgTypes[47]
	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 RolloverAddress.ProtoReflect.Descriptor instead.
func (*RolloverAddress) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{47}
}

func (x *RolloverAddress) GetAddress() string {
	if x != nil {
		return x.Address
	}
	return ""
}

func (x *RolloverAddress) GetTaprootTree() *Tapscripts {
	if x != nil {
		return x.TaprootTree
	}
	return nil
}

func (x *RolloverAddress) GetDestinationAddress() string {
	if x != nil {
		return x.DestinationAddress
	}
	return ""
}

type Tapscripts struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Scripts []string `protobuf:"bytes,1,rep,name=scripts,proto3" json:"scripts,omitempty"`
}

func (x *Tapscripts) Reset() {
	*x = Tapscripts{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[48]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *Tapscripts) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Tapscripts) ProtoMessage() {}

func (x *Tapscripts) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_proto_msgTypes[48]
	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 Tapscripts.ProtoReflect.Descriptor instead.
func (*Tapscripts) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{48}
}

func (x *Tapscripts) GetScripts() []string {
	if x != nil {
		return x.Scripts
	}
	return nil
}

type GetVirtualTxsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Txids []string `protobuf:"bytes,1,rep,name=txids,proto3" json:"txids,omitempty"`
}

func (x *GetVirtualTxsRequest) Reset() {
	*x = GetVirtualTxsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[49]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetVirtualTxsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetVirtualTxsRequest) ProtoMessage() {}

func (x *GetVirtualTxsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_proto_msgTypes[49]
	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 GetVirtualTxsRequest.ProtoReflect.Descriptor instead.
func (*GetVirtualTxsRequest) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{49}
}

func (x *GetVirtualTxsRequest) GetTxids() []string {
	if x != nil {
		return x.Txids
	}
	return nil
}

type GetVirtualTxsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Txs []string `protobuf:"bytes,1,rep,name=txs,proto3" json:"txs,omitempty"`
}

func (x *GetVirtualTxsResponse) Reset() {
	*x = GetVirtualTxsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_fulmine_v1_service_proto_msgTypes[50]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetVirtualTxsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetVirtualTxsResponse) ProtoMessage() {}

func (x *GetVirtualTxsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_fulmine_v1_service_proto_msgTypes[50]
	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 GetVirtualTxsResponse.ProtoReflect.Descriptor instead.
func (*GetVirtualTxsResponse) Descriptor() ([]byte, []int) {
	return file_fulmine_v1_service_proto_rawDescGZIP(), []int{50}
}

func (x *GetVirtualTxsResponse) GetTxs() []string {
	if x != nil {
		return x.Txs
	}
	return nil
}

var File_fulmine_v1_service_proto protoreflect.FileDescriptor

var file_fulmine_v1_service_proto_rawDesc = []byte{
	0x0a, 0x18, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0a, 0x66, 0x75, 0x6c, 0x6d,
	0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x1a, 0x16, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2f,
	0x76, 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c,
	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x13, 0x0a, 0x11,
	0x47, 0x65, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x22, 0x46, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65,
	0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73,
	0x73, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x22, 0x13, 0x0a, 0x11, 0x47, 0x65, 0x74,
	0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x2c,
	0x0a, 0x12, 0x47, 0x65, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x10, 0x0a, 0x0e,
	0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xe6,
	0x02, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x3d, 0x0a, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0e, 0x32, 0x23, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31,
	0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72,
	0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x64, 0x64, 0x72, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x64, 0x64, 0x72, 0x50, 0x72, 0x65, 0x66,
	0x69, 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x75, 0x72, 0x6c,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x72,
	0x6c, 0x12, 0x34, 0x0a, 0x0a, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e,
	0x76, 0x31, 0x2e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x62, 0x75,
	0x69, 0x6c, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65,
	0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x12,
	0x23, 0x0a, 0x0d, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x72, 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79,
	0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x72, 0x50, 0x75,
	0x62, 0x6b, 0x65, 0x79, 0x22, 0x61, 0x0a, 0x07, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12,
	0x17, 0x0a, 0x13, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45,
	0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x4e, 0x45, 0x54, 0x57,
	0x4f, 0x52, 0x4b, 0x5f, 0x4d, 0x41, 0x49, 0x4e, 0x4e, 0x45, 0x54, 0x10, 0x01, 0x12, 0x13, 0x0a,
	0x0f, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x54, 0x45, 0x53, 0x54, 0x4e, 0x45, 0x54,
	0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x52, 0x45,
	0x47, 0x54, 0x45, 0x53, 0x54, 0x10, 0x03, 0x22, 0x32, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x4f, 0x6e,
	0x62, 0x6f, 0x61, 0x72, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x04, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x35, 0x0a, 0x19, 0x47,
	0x65, 0x74, 0x4f, 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72,
	0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65,
	0x73, 0x73, 0x22, 0x30, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x49, 0x6e,
	0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x72, 0x6f, 0x75,
	0x6e, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x6f, 0x75,
	0x6e, 0x64, 0x49, 0x64, 0x22, 0x3f, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x75, 0x6e, 0x64,
	0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x05,
	0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x66, 0x75,
	0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x52, 0x05,
	0x72, 0x6f, 0x75, 0x6e, 0x64, 0x22, 0x1e, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x54, 0x72, 0x61, 0x6e,
	0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x60, 0x0a, 0x1d, 0x47, 0x65, 0x74, 0x54, 0x72, 0x61, 0x6e,
	0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x0c, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x66,
	0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0c, 0x74, 0x72, 0x61, 0x6e, 0x73,
	0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x27, 0x0a, 0x11, 0x52, 0x65, 0x64, 0x65, 0x65,
	0x6d, 0x4e, 0x6f, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04,
	0x6e, 0x6f, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x6f, 0x74, 0x65,
	0x22, 0x28, 0x0a, 0x12, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x4e, 0x6f, 0x74, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x22, 0x0f, 0x0a, 0x0d, 0x53, 0x65,
	0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x24, 0x0a, 0x0e, 0x53,
	0x65, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a,
	0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x78, 0x69,
	0x64, 0x22, 0x47, 0x0a, 0x13, 0x53, 0x65, 0x6e, 0x64, 0x4f, 0x66, 0x66, 0x43, 0x68, 0x61, 0x69,
	0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72,
	0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65,
	0x73, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x04, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x2a, 0x0a, 0x14, 0x53, 0x65,
	0x6e, 0x64, 0x4f, 0x66, 0x66, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x22, 0x46, 0x0a, 0x12, 0x53, 0x65, 0x6e, 0x64, 0x4f, 0x6e,
	0x43, 0x68, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07,
	0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61,
	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x29,
	0x0a, 0x13, 0x53, 0x65, 0x6e, 0x64, 0x4f, 0x6e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x22, 0x28, 0x0a, 0x16, 0x53, 0x69, 0x67,
	0x6e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x02, 0x74, 0x78, 0x22, 0x36, 0x0a, 0x17, 0x53, 0x69, 0x67, 0x6e, 0x54, 0x72, 0x61, 0x6e, 0x73,
	0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1b,
	0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, 0x74, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x54, 0x78, 0x22, 0xd0, 0x03, 0x0a, 0x12,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x56, 0x48, 0x54, 0x4c, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x68,
	0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x72, 0x65, 0x69, 0x6d,
	0x61, 0x67, 0x65, 0x48, 0x61, 0x73, 0x68, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x6e, 0x64, 0x65,
	0x72, 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c,
	0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x12, 0x27, 0x0a, 0x0f,
	0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x50,
	0x75, 0x62, 0x6b, 0x65, 0x79, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x5f,
	0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e,
	0x72, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x4c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x52,
	0x0a, 0x16, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x61,
	0x69, 0x6d, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c,
	0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61,
	0x74, 0x69, 0x76, 0x65, 0x4c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x14, 0x75, 0x6e,
	0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x44, 0x65, 0x6c,
	0x61, 0x79, 0x12, 0x54, 0x0a, 0x17, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c,
	0x5f, 0x72, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x06, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31,
	0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x4c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d,
	0x65, 0x52, 0x15, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x52, 0x65, 0x66,
	0x75, 0x6e, 0x64, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x74, 0x0a, 0x28, 0x75, 0x6e, 0x69, 0x6c,
	0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x72, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x5f, 0x77, 0x69,
	0x74, 0x68, 0x6f, 0x75, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x64,
	0x65, 0x6c, 0x61, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x66, 0x75, 0x6c,
	0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65,
	0x4c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x24, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74,
	0x65, 0x72, 0x61, 0x6c, 0x52, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x57, 0x69, 0x74, 0x68, 0x6f, 0x75,
	0x74, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x22, 0xc1,
	0x03, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x56, 0x48, 0x54, 0x4c, 0x43, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73,
	0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
	0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x50, 0x75, 0x62,
	0x6b, 0x65, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x5f, 0x70, 0x75,
	0x62, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x66, 0x75,
	0x6e, 0x64, 0x50, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x12, 0x34, 0x0a,
	0x09, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x74, 0x72, 0x65, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x17, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x61,
	0x70, 0x72, 0x6f, 0x6f, 0x74, 0x54, 0x72, 0x65, 0x65, 0x52, 0x08, 0x73, 0x77, 0x61, 0x70, 0x54,
	0x72, 0x65, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x5f, 0x6c, 0x6f,
	0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x72, 0x65,
	0x66, 0x75, 0x6e, 0x64, 0x4c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x34, 0x0a, 0x16,
	0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x61, 0x69, 0x6d,
	0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x14, 0x75, 0x6e,
	0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x44, 0x65, 0x6c,
	0x61, 0x79, 0x12, 0x36, 0x0a, 0x17, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c,
	0x5f, 0x72, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x08, 0x20,
	0x01, 0x28, 0x03, 0x52, 0x15, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x52,
	0x65, 0x66, 0x75, 0x6e, 0x64, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x56, 0x0a, 0x28, 0x75, 0x6e,
	0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x72, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x5f,
	0x77, 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72,
	0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x24, 0x75, 0x6e,
	0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x52, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x57, 0x69,
	0x74, 0x68, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x44, 0x65, 0x6c,
	0x61, 0x79, 0x22, 0x2f, 0x0a, 0x11, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x56, 0x48, 0x54, 0x4c, 0x43,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x65, 0x69, 0x6d,
	0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x65, 0x69, 0x6d,
	0x61, 0x67, 0x65, 0x22, 0x35, 0x0a, 0x12, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x56, 0x48, 0x54, 0x4c,
	0x43, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x64,
	0x65, 0x65, 0x6d, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a,
	0x72, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x54, 0x78, 0x69, 0x64, 0x22, 0x48, 0x0a, 0x21, 0x52, 0x65,
	0x66, 0x75, 0x6e, 0x64, 0x56, 0x48, 0x54, 0x4c, 0x43, 0x57, 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74,
	0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x23, 0x0a, 0x0d, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x68, 0x61, 0x73, 0x68,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65,
	0x48, 0x61, 0x73, 0x68, 0x22, 0x45, 0x0a, 0x22, 0x52, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x56, 0x48,
	0x54, 0x4c, 0x43, 0x57, 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76,
	0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65,
	0x64, 0x65, 0x65, 0x6d, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0a, 0x72, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x54, 0x78, 0x69, 0x64, 0x22, 0x44, 0x0a, 0x10, 0x4c,
	0x69, 0x73, 0x74, 0x56, 0x48, 0x54, 0x4c, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x30, 0x0a, 0x14, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x68, 0x61, 0x73, 0x68,
	0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x70,
	0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x48, 0x61, 0x73, 0x68, 0x46, 0x69, 0x6c, 0x74, 0x65,
	0x72, 0x22, 0x3d, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x48, 0x54, 0x4c, 0x43, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x06, 0x76, 0x68, 0x74, 0x6c, 0x63, 0x73,
	0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65,
	0x2e, 0x76, 0x31, 0x2e, 0x56, 0x74, 0x78, 0x6f, 0x52, 0x06, 0x76, 0x68, 0x74, 0x6c, 0x63, 0x73,
	0x22, 0x2b, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x2e, 0x0a,
	0x12, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x22, 0x2d, 0x0a,
	0x11, 0x50, 0x61, 0x79, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x07, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x22, 0x28, 0x0a, 0x12,
	0x50, 0x61, 0x79, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x22, 0xd8, 0x03, 0x0a, 0x0b, 0x54, 0x61, 0x70, 0x72, 0x6f,
	0x6f, 0x74, 0x54, 0x72, 0x65, 0x65, 0x12, 0x36, 0x0a, 0x0a, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x5f,
	0x6c, 0x65, 0x61, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x66, 0x75, 0x6c,
	0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x61, 0x70, 0x72, 0x6f, 0x6f, 0x74, 0x4c,
	0x65, 0x61, 0x66, 0x52, 0x09, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x4c, 0x65, 0x61, 0x66, 0x12, 0x38,
	0x0a, 0x0b, 0x72, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x5f, 0x6c, 0x65, 0x61, 0x66, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31,
	0x2e, 0x54, 0x61, 0x70, 0x72, 0x6f, 0x6f, 0x74, 0x4c, 0x65, 0x61, 0x66, 0x52, 0x0a, 0x72, 0x65,
	0x66, 0x75, 0x6e, 0x64, 0x4c, 0x65, 0x61, 0x66, 0x12, 0x52, 0x0a, 0x19, 0x72, 0x65, 0x66, 0x75,
	0x6e, 0x64, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x7a,
	0x5f, 0x6c, 0x65, 0x61, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x66, 0x75,
	0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x61, 0x70, 0x72, 0x6f, 0x6f, 0x74,
	0x4c, 0x65, 0x61, 0x66, 0x52, 0x16, 0x72, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x57, 0x69, 0x74, 0x68,
	0x6f, 0x75, 0x74, 0x42, 0x6f, 0x6c, 0x74, 0x7a, 0x4c, 0x65, 0x61, 0x66, 0x12, 0x4b, 0x0a, 0x15,
	0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x61, 0x69, 0x6d,
	0x5f, 0x6c, 0x65, 0x61, 0x66, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x66, 0x75,
	0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x61, 0x70, 0x72, 0x6f, 0x6f, 0x74,
	0x4c, 0x65, 0x61, 0x66, 0x52, 0x13, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c,
	0x43, 0x6c, 0x61, 0x69, 0x6d, 0x4c, 0x65, 0x61, 0x66, 0x12, 0x4d, 0x0a, 0x16, 0x75, 0x6e, 0x69,
	0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x72, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x5f, 0x6c,
	0x65, 0x61, 0x66, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x66, 0x75, 0x6c, 0x6d,
	0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x61, 0x70, 0x72, 0x6f, 0x6f, 0x74, 0x4c, 0x65,
	0x61, 0x66, 0x52, 0x14, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x52, 0x65,
	0x66, 0x75, 0x6e, 0x64, 0x4c, 0x65, 0x61, 0x66, 0x12, 0x67, 0x0a, 0x24, 0x75, 0x6e, 0x69, 0x6c,
	0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x72, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x5f, 0x77, 0x69,
	0x74, 0x68, 0x6f, 0x75, 0x74, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x7a, 0x5f, 0x6c, 0x65, 0x61, 0x66,
	0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65,
	0x2e, 0x76, 0x31, 0x2e, 0x54, 0x61, 0x70, 0x72, 0x6f, 0x6f, 0x74, 0x4c, 0x65, 0x61, 0x66, 0x52,
	0x20, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x52, 0x65, 0x66, 0x75, 0x6e,
	0x64, 0x57, 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74, 0x42, 0x6f, 0x6c, 0x74, 0x7a, 0x4c, 0x65, 0x61,
	0x66, 0x22, 0x3f, 0x0a, 0x0b, 0x54, 0x61, 0x70, 0x72, 0x6f, 0x6f, 0x74, 0x4c, 0x65, 0x61, 0x66,
	0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x05, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x75,
	0x74, 0x70, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x70,
	0x75, 0x74, 0x22, 0x33, 0x0a, 0x17, 0x49, 0x73, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53,
	0x65, 0x74, 0x74, 0x6c, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a,
	0x07, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
	0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x22, 0x34, 0x0a, 0x18, 0x49, 0x73, 0x49, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x53, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x64, 0x22, 0xc9, 0x01,
	0x0a, 0x10, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x4c, 0x6f, 0x63, 0x6b, 0x74, 0x69,
	0x6d, 0x65, 0x12, 0x3d, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
	0x32, 0x29, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65,
	0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x4c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x4c,
	0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70,
	0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d,
	0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x60, 0x0a, 0x0c, 0x4c, 0x6f, 0x63, 0x6b, 0x74,
	0x69, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x19, 0x4c, 0x4f, 0x43, 0x4b, 0x54,
	0x49, 0x4d, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49,
	0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x4c, 0x4f, 0x43, 0x4b, 0x54, 0x49,
	0x4d, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x10, 0x01, 0x12,
	0x18, 0x0a, 0x14, 0x4c, 0x4f, 0x43, 0x4b, 0x54, 0x49, 0x4d, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45,
	0x5f, 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x10, 0x02, 0x22, 0x1d, 0x0a, 0x1b, 0x47, 0x65, 0x74,
	0x44, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65,
	0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x3d, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x44,
	0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x75, 0x62, 0x6c,
	0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x75,
	0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x22, 0x68, 0x0a, 0x1e, 0x57, 0x61, 0x74, 0x63, 0x68,
	0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x46, 0x6f, 0x72, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x76,
	0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x10, 0x72, 0x6f, 0x6c,
	0x6c, 0x6f, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31,
	0x2e, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
	0x52, 0x0f, 0x72, 0x6f, 0x6c, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
	0x73, 0x22, 0x21, 0x0a, 0x1f, 0x57, 0x61, 0x74, 0x63, 0x68, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
	0x73, 0x46, 0x6f, 0x72, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x31, 0x0a, 0x15, 0x55, 0x6e, 0x77, 0x61, 0x74, 0x63, 0x68, 0x41,
	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a,
	0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
	0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x18, 0x0a, 0x16, 0x55, 0x6e, 0x77, 0x61, 0x74,
	0x63, 0x68, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0x1d, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64,
	0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x22, 0x59, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x41,
	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x39, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31,
	0x2e, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
	0x52, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x22, 0x97, 0x01, 0x0a, 0x0f,
	0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12,
	0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x39, 0x0a, 0x0c, 0x74, 0x61, 0x70,
	0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x74, 0x72, 0x65, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x16, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x61, 0x70,
	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x52, 0x0b, 0x74, 0x61, 0x70, 0x72, 0x6f, 0x6f, 0x74,
	0x54, 0x72, 0x65, 0x65, 0x12, 0x2f, 0x0a, 0x13, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x12, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x64,
	0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x26, 0x0a, 0x0a, 0x54, 0x61, 0x70, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x18, 0x01,
	0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x22, 0x2c, 0x0a,
	0x14, 0x47, 0x65, 0x74, 0x56, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x54, 0x78, 0x73, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x78, 0x69, 0x64, 0x73, 0x18, 0x01,
	0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x74, 0x78, 0x69, 0x64, 0x73, 0x22, 0x29, 0x0a, 0x15, 0x47,
	0x65, 0x74, 0x56, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x54, 0x78, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x78, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
	0x09, 0x52, 0x03, 0x74, 0x78, 0x73, 0x32, 0xe5, 0x14, 0x0a, 0x07, 0x53, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x12, 0x60, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
	0x12, 0x1d, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65,
	0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x1e, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74,
	0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
	0x13, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0d, 0x12, 0x0b, 0x2f, 0x76, 0x31, 0x2f, 0x61, 0x64, 0x64,
	0x72, 0x65, 0x73, 0x73, 0x12, 0x60, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e,
	0x63, 0x65, 0x12, 0x1d, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e,
	0x47, 0x65, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x1e, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47,
	0x65, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0x13, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0d, 0x12, 0x0b, 0x2f, 0x76, 0x31, 0x2f, 0x62,
	0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x54, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66,
	0x6f, 0x12, 0x1a, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47,
	0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e,
	0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e,
	0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x10, 0x82, 0xd3, 0xe4, 0x93,
	0x02, 0x0a, 0x12, 0x08, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x78, 0x0a, 0x11,
	0x47, 0x65, 0x74, 0x4f, 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
	0x73, 0x12, 0x24, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47,
	0x65, 0x74, 0x4f, 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e,
	0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4f, 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x41,
	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x16,
	0x82, 0xd3, 0xe4, 0x93, 0x02, 0x10, 0x3a, 0x01, 0x2a, 0x22, 0x0b, 0x2f, 0x76, 0x31, 0x2f, 0x6f,
	0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x12, 0x6f, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x75,
	0x6e, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1f, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65,
	0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x49, 0x6e, 0x66, 0x6f,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e,
	0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x49, 0x6e, 0x66,
	0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1c, 0x82, 0xd3, 0xe4, 0x93, 0x02,
	0x16, 0x12, 0x14, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x2f, 0x7b, 0x72, 0x6f,
	0x75, 0x6e, 0x64, 0x5f, 0x69, 0x64, 0x7d, 0x12, 0x86, 0x01, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x54,
	0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72,
	0x79, 0x12, 0x28, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47,
	0x65, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x69, 0x73,
	0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x66, 0x75,
	0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x72, 0x61, 0x6e,
	0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x18, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x12, 0x12, 0x10,
	0x2f, 0x76, 0x31, 0x2f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73,
	0x12, 0x67, 0x0a, 0x0a, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x4e, 0x6f, 0x74, 0x65, 0x12, 0x1d,
	0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x64, 0x65,
	0x65, 0x6d, 0x4e, 0x6f, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e,
	0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x64, 0x65, 0x65,
	0x6d, 0x4e, 0x6f, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1a, 0x82,
	0xd3, 0xe4, 0x93, 0x02, 0x14, 0x3a, 0x01, 0x2a, 0x22, 0x0f, 0x2f, 0x76, 0x31, 0x2f, 0x6e, 0x6f,
	0x74, 0x65, 0x2f, 0x72, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x12, 0x53, 0x0a, 0x06, 0x53, 0x65, 0x74,
	0x74, 0x6c, 0x65, 0x12, 0x19, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31,
	0x2e, 0x53, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a,
	0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x74, 0x74,
	0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x12, 0x82, 0xd3, 0xe4, 0x93,
	0x02, 0x0c, 0x12, 0x0a, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x12, 0x6f,
	0x0a, 0x0c, 0x53, 0x65, 0x6e, 0x64, 0x4f, 0x66, 0x66, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x12, 0x1f,
	0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x6e, 0x64,
	0x4f, 0x66, 0x66, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x20, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x6e,
	0x64, 0x4f, 0x66, 0x66, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0x1c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x16, 0x3a, 0x01, 0x2a, 0x22, 0x11, 0x2f, 0x76,
	0x31, 0x2f, 0x73, 0x65, 0x6e, 0x64, 0x2f, 0x6f, 0x66, 0x66, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x12,
	0x6b, 0x0a, 0x0b, 0x53, 0x65, 0x6e, 0x64, 0x4f, 0x6e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x12, 0x1e,
	0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x6e, 0x64,
	0x4f, 0x6e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f,
	0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x6e, 0x64,
	0x4f, 0x6e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
	0x1b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x15, 0x3a, 0x01, 0x2a, 0x22, 0x10, 0x2f, 0x76, 0x31, 0x2f,
	0x73, 0x65, 0x6e, 0x64, 0x2f, 0x6f, 0x6e, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x12, 0x7b, 0x0a, 0x0f,
	0x53, 0x69, 0x67, 0x6e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12,
	0x22, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x69, 0x67,
	0x6e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31,
	0x2e, 0x53, 0x69, 0x67, 0x6e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1f, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19,
	0x3a, 0x01, 0x2a, 0x22, 0x14, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x73, 0x69, 0x67, 0x6e, 0x12, 0x64, 0x0a, 0x0b, 0x43, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x56, 0x48, 0x54, 0x4c, 0x43, 0x12, 0x1e, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69,
	0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x56, 0x48, 0x54, 0x4c,
	0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69,
	0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x56, 0x48, 0x54, 0x4c,
	0x43, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x14, 0x82, 0xd3, 0xe4, 0x93, 0x02,
	0x0e, 0x3a, 0x01, 0x2a, 0x22, 0x09, 0x2f, 0x76, 0x31, 0x2f, 0x76, 0x68, 0x74, 0x6c, 0x63, 0x12,
	0x67, 0x0a, 0x0a, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x56, 0x48, 0x54, 0x4c, 0x43, 0x12, 0x1d, 0x2e,
	0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x61, 0x69, 0x6d,
	0x56, 0x48, 0x54, 0x4c, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x66,
	0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x56,
	0x48, 0x54, 0x4c, 0x43, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1a, 0x82, 0xd3,
	0xe4, 0x93, 0x02, 0x14, 0x3a, 0x01, 0x2a, 0x22, 0x0f, 0x2f, 0x76, 0x31, 0x2f, 0x76, 0x68, 0x74,
	0x6c, 0x63, 0x2f, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x12, 0xa7, 0x01, 0x0a, 0x1a, 0x52, 0x65, 0x66,
	0x75, 0x6e, 0x64, 0x56, 0x48, 0x54, 0x4c, 0x43, 0x57, 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74, 0x52,
	0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x12, 0x2d, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e,
	0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x56, 0x48, 0x54, 0x4c, 0x43,
	0x57, 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65,
	0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x56, 0x48, 0x54, 0x4c, 0x43, 0x57,
	0x69, 0x74, 0x68, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x24, 0x3a, 0x01,
	0x2a, 0x22, 0x1f, 0x2f, 0x76, 0x31, 0x2f, 0x76, 0x68, 0x74, 0x6c, 0x63, 0x2f, 0x72, 0x65, 0x66,
	0x75, 0x6e, 0x64, 0x57, 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76,
	0x65, 0x72, 0x12, 0x5b, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x48, 0x54, 0x4c, 0x43, 0x12,
	0x1c, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73,
	0x74, 0x56, 0x48, 0x54, 0x4c, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e,
	0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56,
	0x48, 0x54, 0x4c, 0x43, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x11, 0x82, 0xd3,
	0xe4, 0x93, 0x02, 0x0b, 0x12, 0x09, 0x2f, 0x76, 0x31, 0x2f, 0x76, 0x68, 0x74, 0x6c, 0x63, 0x12,
	0x63, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x1d, 0x2e,
	0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e,
	0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x66,
	0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x16, 0x82, 0xd3,
	0xe4, 0x93, 0x02, 0x10, 0x3a, 0x01, 0x2a, 0x22, 0x0b, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x12, 0x67, 0x0a, 0x0a, 0x50, 0x61, 0x79, 0x49, 0x6e, 0x76, 0x6f, 0x69,
	0x63, 0x65, 0x12, 0x1d, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e,
	0x50, 0x61, 0x79, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x1e, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50,
	0x61, 0x79, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0x1a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x14, 0x3a, 0x01, 0x2a, 0x22, 0x0f, 0x2f, 0x76,
	0x31, 0x2f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x2f, 0x70, 0x61, 0x79, 0x12, 0x79, 0x0a,
	0x10, 0x49, 0x73, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x65, 0x74, 0x74, 0x6c, 0x65,
	0x64, 0x12, 0x23, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x49,
	0x73, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x64, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65,
	0x2e, 0x76, 0x31, 0x2e, 0x49, 0x73, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x65, 0x74,
	0x74, 0x6c, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1a, 0x82, 0xd3,
	0xe4, 0x93, 0x02, 0x14, 0x12, 0x12, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63,
	0x65, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x86, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74,
	0x44, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65,
	0x79, 0x12, 0x27, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47,
	0x65, 0x74, 0x44, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63,
	0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x66, 0x75, 0x6c,
	0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x6c, 0x65, 0x67,
	0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x15, 0x12, 0x13, 0x2f, 0x76,
	0x31, 0x2f, 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x2f, 0x70, 0x75, 0x62, 0x6b, 0x65,
	0x79, 0x12, 0x91, 0x01, 0x0a, 0x17, 0x57, 0x61, 0x74, 0x63, 0x68, 0x41, 0x64, 0x64, 0x72, 0x65,
	0x73, 0x73, 0x46, 0x6f, 0x72, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x12, 0x2a, 0x2e,
	0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x57, 0x61, 0x74, 0x63, 0x68,
	0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x46, 0x6f, 0x72, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x76,
	0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x66, 0x75, 0x6c, 0x6d,
	0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x57, 0x61, 0x74, 0x63, 0x68, 0x41, 0x64, 0x64, 0x72,
	0x65, 0x73, 0x73, 0x46, 0x6f, 0x72, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x17, 0x3a, 0x01,
	0x2a, 0x22, 0x12, 0x2f, 0x76, 0x31, 0x2f, 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x2f,
	0x77, 0x61, 0x74, 0x63, 0x68, 0x12, 0x78, 0x0a, 0x0e, 0x55, 0x6e, 0x77, 0x61, 0x74, 0x63, 0x68,
	0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x21, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e,
	0x65, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x6e, 0x77, 0x61, 0x74, 0x63, 0x68, 0x41, 0x64, 0x64, 0x72,
	0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x66, 0x75, 0x6c,
	0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x6e, 0x77, 0x61, 0x74, 0x63, 0x68, 0x41,
	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1f,
	0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19, 0x3a, 0x01, 0x2a, 0x22, 0x14, 0x2f, 0x76, 0x31, 0x2f, 0x64,
	0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x2f, 0x75, 0x6e, 0x77, 0x61, 0x74, 0x63, 0x68, 0x12,
	0x87, 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x41,
	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x27, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69,
	0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x61, 0x74, 0x63, 0x68, 0x65,
	0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x28, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x57, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
	0x73, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1c, 0x82, 0xd3, 0xe4,
	0x93, 0x02, 0x16, 0x12, 0x14, 0x2f, 0x76, 0x31, 0x2f, 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74,
	0x65, 0x2f, 0x77, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x12, 0x73, 0x0a, 0x0d, 0x47, 0x65, 0x74,
	0x56, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x54, 0x78, 0x73, 0x12, 0x20, 0x2e, 0x66, 0x75, 0x6c,
	0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x69, 0x72, 0x74, 0x75,
	0x61, 0x6c, 0x54, 0x78, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x66,
	0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x69, 0x72,
	0x74, 0x75, 0x61, 0x6c, 0x54, 0x78, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
	0x1d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x17, 0x12, 0x15, 0x2f, 0x76, 0x31, 0x2f, 0x76, 0x69, 0x72,
	0x74, 0x75, 0x61, 0x6c, 0x54, 0x78, 0x2f, 0x7b, 0x74, 0x78, 0x69, 0x64, 0x73, 0x7d, 0x42, 0xb0,
	0x01, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x2e, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x76,
	0x31, 0x42, 0x0c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50,
	0x01, 0x5a, 0x47, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x72,
	0x6b, 0x4c, 0x61, 0x62, 0x73, 0x48, 0x51, 0x2f, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2f,
	0x61, 0x70, 0x69, 0x2d, 0x73, 0x70, 0x65, 0x63, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
	0x66, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2f, 0x76, 0x31,
	0x3b, 0x66, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x46, 0x58, 0x58,
	0xaa, 0x02, 0x0a, 0x46, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x0a,
	0x46, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x16, 0x46, 0x75, 0x6c,
	0x6d, 0x69, 0x6e, 0x65, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64,
	0x61, 0x74, 0x61, 0xea, 0x02, 0x0b, 0x46, 0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x3a, 0x3a, 0x56,
	0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}

var (
	file_fulmine_v1_service_proto_rawDescOnce sync.Once
	file_fulmine_v1_service_proto_rawDescData = file_fulmine_v1_service_proto_rawDesc
)

func file_fulmine_v1_service_proto_rawDescGZIP() []byte {
	file_fulmine_v1_service_proto_rawDescOnce.Do(func() {
		file_fulmine_v1_service_proto_rawDescData = protoimpl.X.CompressGZIP(file_fulmine_v1_service_proto_rawDescData)
	})
	return file_fulmine_v1_service_proto_rawDescData
}

var file_fulmine_v1_service_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
var file_fulmine_v1_service_proto_msgTypes = make([]protoimpl.MessageInfo, 51)
var file_fulmine_v1_service_proto_goTypes = []interface{}{
	(GetInfoResponse_Network)(0),               // 0: fulmine.v1.GetInfoResponse.Network
	(RelativeLocktime_LocktimeType)(0),         // 1: fulmine.v1.RelativeLocktime.LocktimeType
	(*GetAddressRequest)(nil),                  // 2: fulmine.v1.GetAddressRequest
	(*GetAddressResponse)(nil),                 // 3: fulmine.v1.GetAddressResponse
	(*GetBalanceRequest)(nil),                  // 4: fulmine.v1.GetBalanceRequest
	(*GetBalanceResponse)(nil),                 // 5: fulmine.v1.GetBalanceResponse
	(*GetInfoRequest)(nil),                     // 6: fulmine.v1.GetInfoRequest
	(*GetInfoResponse)(nil),                    // 7: fulmine.v1.GetInfoResponse
	(*GetOnboardAddressRequest)(nil),           // 8: fulmine.v1.GetOnboardAddressRequest
	(*GetOnboardAddressResponse)(nil),          // 9: fulmine.v1.GetOnboardAddressResponse
	(*GetRoundInfoRequest)(nil),                // 10: fulmine.v1.GetRoundInfoRequest
	(*GetRoundInfoResponse)(nil),               // 11: fulmine.v1.GetRoundInfoResponse
	(*GetTransactionHistoryRequest)(nil),       // 12: fulmine.v1.GetTransactionHistoryRequest
	(*GetTransactionHistoryResponse)(nil),      // 13: fulmine.v1.GetTransactionHistoryResponse
	(*RedeemNoteRequest)(nil),                  // 14: fulmine.v1.RedeemNoteRequest
	(*RedeemNoteResponse)(nil),                 // 15: fulmine.v1.RedeemNoteResponse
	(*SettleRequest)(nil),                      // 16: fulmine.v1.SettleRequest
	(*SettleResponse)(nil),                     // 17: fulmine.v1.SettleResponse
	(*SendOffChainRequest)(nil),                // 18: fulmine.v1.SendOffChainRequest
	(*SendOffChainResponse)(nil),               // 19: fulmine.v1.SendOffChainResponse
	(*SendOnChainRequest)(nil),                 // 20: fulmine.v1.SendOnChainRequest
	(*SendOnChainResponse)(nil),                // 21: fulmine.v1.SendOnChainResponse
	(*SignTransactionRequest)(nil),             // 22: fulmine.v1.SignTransactionRequest
	(*SignTransactionResponse)(nil),            // 23: fulmine.v1.SignTransactionResponse
	(*CreateVHTLCRequest)(nil),                 // 24: fulmine.v1.CreateVHTLCRequest
	(*CreateVHTLCResponse)(nil),                // 25: fulmine.v1.CreateVHTLCResponse
	(*ClaimVHTLCRequest)(nil),                  // 26: fulmine.v1.ClaimVHTLCRequest
	(*ClaimVHTLCResponse)(nil),                 // 27: fulmine.v1.ClaimVHTLCResponse
	(*RefundVHTLCWithoutReceiverRequest)(nil),  // 28: fulmine.v1.RefundVHTLCWithoutReceiverRequest
	(*RefundVHTLCWithoutReceiverResponse)(nil), // 29: fulmine.v1.RefundVHTLCWithoutReceiverResponse
	(*ListVHTLCRequest)(nil),                   // 30: fulmine.v1.ListVHTLCRequest
	(*ListVHTLCResponse)(nil),                  // 31: fulmine.v1.ListVHTLCResponse
	(*GetInvoiceRequest)(nil),                  // 32: fulmine.v1.GetInvoiceRequest
	(*GetInvoiceResponse)(nil),                 // 33: fulmine.v1.GetInvoiceResponse
	(*PayInvoiceRequest)(nil),                  // 34: fulmine.v1.PayInvoiceRequest
	(*PayInvoiceResponse)(nil),                 // 35: fulmine.v1.PayInvoiceResponse
	(*TaprootTree)(nil),                        // 36: fulmine.v1.TaprootTree
	(*TaprootLeaf)(nil),                        // 37: fulmine.v1.TaprootLeaf
	(*IsInvoiceSettledRequest)(nil),            // 38: fulmine.v1.IsInvoiceSettledRequest
	(*IsInvoiceSettledResponse)(nil),           // 39: fulmine.v1.IsInvoiceSettledResponse
	(*RelativeLocktime)(nil),                   // 40: fulmine.v1.RelativeLocktime
	(*GetDelegatePublicKeyRequest)(nil),        // 41: fulmine.v1.GetDelegatePublicKeyRequest
	(*GetDelegatePublicKeyResponse)(nil),       // 42: fulmine.v1.GetDelegatePublicKeyResponse
	(*WatchAddressForRolloverRequest)(nil),     // 43: fulmine.v1.WatchAddressForRolloverRequest
	(*WatchAddressForRolloverResponse)(nil),    // 44: fulmine.v1.WatchAddressForRolloverResponse
	(*UnwatchAddressRequest)(nil),              // 45: fulmine.v1.UnwatchAddressRequest
	(*UnwatchAddressResponse)(nil),             // 46: fulmine.v1.UnwatchAddressResponse
	(*ListWatchedAddressesRequest)(nil),        // 47: fulmine.v1.ListWatchedAddressesRequest
	(*ListWatchedAddressesResponse)(nil),       // 48: fulmine.v1.ListWatchedAddressesResponse
	(*RolloverAddress)(nil),                    // 49: fulmine.v1.RolloverAddress
	(*Tapscripts)(nil),                         // 50: fulmine.v1.Tapscripts
	(*GetVirtualTxsRequest)(nil),               // 51: fulmine.v1.GetVirtualTxsRequest
	(*GetVirtualTxsResponse)(nil),              // 52: fulmine.v1.GetVirtualTxsResponse
	(*BuildInfo)(nil),                          // 53: fulmine.v1.BuildInfo
	(*Round)(nil),                              // 54: fulmine.v1.Round
	(*TransactionInfo)(nil),                    // 55: fulmine.v1.TransactionInfo
	(*Vtxo)(nil),                               // 56: fulmine.v1.Vtxo
}
var file_fulmine_v1_service_proto_depIdxs = []int32{
	0,  // 0: fulmine.v1.GetInfoResponse.network:type_name -> fulmine.v1.GetInfoResponse.Network
	53, // 1: fulmine.v1.GetInfoResponse.build_info:type_name -> fulmine.v1.BuildInfo
	54, // 2: fulmine.v1.GetRoundInfoResponse.round:type_name -> fulmine.v1.Round
	55, // 3: fulmine.v1.GetTransactionHistoryResponse.transactions:type_name -> fulmine.v1.TransactionInfo
	40, // 4: fulmine.v1.CreateVHTLCRequest.unilateral_claim_delay:type_name -> fulmine.v1.RelativeLocktime
	40, // 5: fulmine.v1.CreateVHTLCRequest.unilateral_refund_delay:type_name -> fulmine.v1.RelativeLocktime
	40, // 6: fulmine.v1.CreateVHTLCRequest.unilateral_refund_without_receiver_delay:type_name -> fulmine.v1.RelativeLocktime
	36, // 7: fulmine.v1.CreateVHTLCResponse.swap_tree:type_name -> fulmine.v1.TaprootTree
	56, // 8: fulmine.v1.ListVHTLCResponse.vhtlcs:type_name -> fulmine.v1.Vtxo
	37, // 9: fulmine.v1.TaprootTree.claim_leaf:type_name -> fulmine.v1.TaprootLeaf
	37, // 10: fulmine.v1.TaprootTree.refund_leaf:type_name -> fulmine.v1.TaprootLeaf
	37, // 11: fulmine.v1.TaprootTree.refund_without_boltz_leaf:type_name -> fulmine.v1.TaprootLeaf
	37, // 12: fulmine.v1.TaprootTree.unilateral_claim_leaf:type_name -> fulmine.v1.TaprootLeaf
	37, // 13: fulmine.v1.TaprootTree.unilateral_refund_leaf:type_name -> fulmine.v1.TaprootLeaf
	37, // 14: fulmine.v1.TaprootTree.unilateral_refund_without_boltz_leaf:type_name -> fulmine.v1.TaprootLeaf
	1,  // 15: fulmine.v1.RelativeLocktime.type:type_name -> fulmine.v1.RelativeLocktime.LocktimeType
	49, // 16: fulmine.v1.WatchAddressForRolloverRequest.rollover_address:type_name -> fulmine.v1.RolloverAddress
	49, // 17: fulmine.v1.ListWatchedAddressesResponse.addresses:type_name -> fulmine.v1.RolloverAddress
	50, // 18: fulmine.v1.RolloverAddress.taproot_tree:type_name -> fulmine.v1.Tapscripts
	2,  // 19: fulmine.v1.Service.GetAddress:input_type -> fulmine.v1.GetAddressRequest
	4,  // 20: fulmine.v1.Service.GetBalance:input_type -> fulmine.v1.GetBalanceRequest
	6,  // 21: fulmine.v1.Service.GetInfo:input_type -> fulmine.v1.GetInfoRequest
	8,  // 22: fulmine.v1.Service.GetOnboardAddress:input_type -> fulmine.v1.GetOnboardAddressRequest
	10, // 23: fulmine.v1.Service.GetRoundInfo:input_type -> fulmine.v1.GetRoundInfoRequest
	12, // 24: fulmine.v1.Service.GetTransactionHistory:input_type -> fulmine.v1.GetTransactionHistoryRequest
	14, // 25: fulmine.v1.Service.RedeemNote:input_type -> fulmine.v1.RedeemNoteRequest
	16, // 26: fulmine.v1.Service.Settle:input_type -> fulmine.v1.SettleRequest
	18, // 27: fulmine.v1.Service.SendOffChain:input_type -> fulmine.v1.SendOffChainRequest
	20, // 28: fulmine.v1.Service.SendOnChain:input_type -> fulmine.v1.SendOnChainRequest
	22, // 29: fulmine.v1.Service.SignTransaction:input_type -> fulmine.v1.SignTransactionRequest
	24, // 30: fulmine.v1.Service.CreateVHTLC:input_type -> fulmine.v1.CreateVHTLCRequest
	26, // 31: fulmine.v1.Service.ClaimVHTLC:input_type -> fulmine.v1.ClaimVHTLCRequest
	28, // 32: fulmine.v1.Service.RefundVHTLCWithoutReceiver:input_type -> fulmine.v1.RefundVHTLCWithoutReceiverRequest
	30, // 33: fulmine.v1.Service.ListVHTLC:input_type -> fulmine.v1.ListVHTLCRequest
	32, // 34: fulmine.v1.Service.GetInvoice:input_type -> fulmine.v1.GetInvoiceRequest
	34, // 35: fulmine.v1.Service.PayInvoice:input_type -> fulmine.v1.PayInvoiceRequest
	38, // 36: fulmine.v1.Service.IsInvoiceSettled:input_type -> fulmine.v1.IsInvoiceSettledRequest
	41, // 37: fulmine.v1.Service.GetDelegatePublicKey:input_type -> fulmine.v1.GetDelegatePublicKeyRequest
	43, // 38: fulmine.v1.Service.WatchAddressForRollover:input_type -> fulmine.v1.WatchAddressForRolloverRequest
	45, // 39: fulmine.v1.Service.UnwatchAddress:input_type -> fulmine.v1.UnwatchAddressRequest
	47, // 40: fulmine.v1.Service.ListWatchedAddresses:input_type -> fulmine.v1.ListWatchedAddressesRequest
	51, // 41: fulmine.v1.Service.GetVirtualTxs:input_type -> fulmine.v1.GetVirtualTxsRequest
	3,  // 42: fulmine.v1.Service.GetAddress:output_type -> fulmine.v1.GetAddressResponse
	5,  // 43: fulmine.v1.Service.GetBalance:output_type -> fulmine.v1.GetBalanceResponse
	7,  // 44: fulmine.v1.Service.GetInfo:output_type -> fulmine.v1.GetInfoResponse
	9,  // 45: fulmine.v1.Service.GetOnboardAddress:output_type -> fulmine.v1.GetOnboardAddressResponse
	11, // 46: fulmine.v1.Service.GetRoundInfo:output_type -> fulmine.v1.GetRoundInfoResponse
	13, // 47: fulmine.v1.Service.GetTransactionHistory:output_type -> fulmine.v1.GetTransactionHistoryResponse
	15, // 48: fulmine.v1.Service.RedeemNote:output_type -> fulmine.v1.RedeemNoteResponse
	17, // 49: fulmine.v1.Service.Settle:output_type -> fulmine.v1.SettleResponse
	19, // 50: fulmine.v1.Service.SendOffChain:output_type -> fulmine.v1.SendOffChainResponse
	21, // 51: fulmine.v1.Service.SendOnChain:output_type -> fulmine.v1.SendOnChainResponse
	23, // 52: fulmine.v1.Service.SignTransaction:output_type -> fulmine.v1.SignTransactionResponse
	25, // 53: fulmine.v1.Service.CreateVHTLC:output_type -> fulmine.v1.CreateVHTLCResponse
	27, // 54: fulmine.v1.Service.ClaimVHTLC:output_type -> fulmine.v1.ClaimVHTLCResponse
	29, // 55: fulmine.v1.Service.RefundVHTLCWithoutReceiver:output_type -> fulmine.v1.RefundVHTLCWithoutReceiverResponse
	31, // 56: fulmine.v1.Service.ListVHTLC:output_type -> fulmine.v1.ListVHTLCResponse
	33, // 57: fulmine.v1.Service.GetInvoice:output_type -> fulmine.v1.GetInvoiceResponse
	35, // 58: fulmine.v1.Service.PayInvoice:output_type -> fulmine.v1.PayInvoiceResponse
	39, // 59: fulmine.v1.Service.IsInvoiceSettled:output_type -> fulmine.v1.IsInvoiceSettledResponse
	42, // 60: fulmine.v1.Service.GetDelegatePublicKey:output_type -> fulmine.v1.GetDelegatePublicKeyResponse
	44, // 61: fulmine.v1.Service.WatchAddressForRollover:output_type -> fulmine.v1.WatchAddressForRolloverResponse
	46, // 62: fulmine.v1.Service.UnwatchAddress:output_type -> fulmine.v1.UnwatchAddressResponse
	48, // 63: fulmine.v1.Service.ListWatchedAddresses:output_type -> fulmine.v1.ListWatchedAddressesResponse
	52, // 64: fulmine.v1.Service.GetVirtualTxs:output_type -> fulmine.v1.GetVirtualTxsResponse
	42, // [42:65] is the sub-list for method output_type
	19, // [19:42] is the sub-list for method input_type
	19, // [19:19] is the sub-list for extension type_name
	19, // [19:19] is the sub-list for extension extendee
	0,  // [0:19] is the sub-list for field type_name
}

func init() { file_fulmine_v1_service_proto_init() }
func file_fulmine_v1_service_proto_init() {
	if File_fulmine_v1_service_proto != nil {
		return
	}
	file_fulmine_v1_types_proto_init()
	if !protoimpl.UnsafeEnabled {
		file_fulmine_v1_service_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetAddressRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetAddressResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetBalanceRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetBalanceResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetInfoRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetInfoResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetOnboardAddressRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetOnboardAddressResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetRoundInfoRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetRoundInfoResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetTransactionHistoryRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetTransactionHistoryResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RedeemNoteRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RedeemNoteResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SettleRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SettleResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SendOffChainRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SendOffChainResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SendOnChainRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SendOnChainResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SignTransactionRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SignTransactionResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateVHTLCRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateVHTLCResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ClaimVHTLCRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ClaimVHTLCResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RefundVHTLCWithoutReceiverRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RefundVHTLCWithoutReceiverResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListVHTLCRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListVHTLCResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetInvoiceRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetInvoiceResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PayInvoiceRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PayInvoiceResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TaprootTree); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TaprootLeaf); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*IsInvoiceSettledRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*IsInvoiceSettledResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RelativeLocktime); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetDelegatePublicKeyRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetDelegatePublicKeyResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*WatchAddressForRolloverRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*WatchAddressForRolloverResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UnwatchAddressRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UnwatchAddressResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListWatchedAddressesRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListWatchedAddressesResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RolloverAddress); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Tapscripts); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetVirtualTxsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_fulmine_v1_service_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetVirtualTxsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_fulmine_v1_service_proto_rawDesc,
			NumEnums:      2,
			NumMessages:   51,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_fulmine_v1_service_proto_goTypes,
		DependencyIndexes: file_fulmine_v1_service_proto_depIdxs,
		EnumInfos:         file_fulmine_v1_service_proto_enumTypes,
		MessageInfos:      file_fulmine_v1_service_proto_msgTypes,
	}.Build()
	File_fulmine_v1_service_proto = out.File
	file_fulmine_v1_service_proto_rawDesc = nil
	file_fulmine_v1_service_proto_goTypes = nil
	file_fulmine_v1_service_proto_depIdxs = nil
}
