pool/poolrpc/trader.pb.go
2025-03-05 12:37:49 +02:00

7321 lines
276 KiB
Go

// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.34.2
// protoc v3.21.12
// source: trader.proto
package poolrpc
import (
auctioneerrpc "github.com/lightninglabs/pool/auctioneerrpc"
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 AccountVersion int32
const (
// Let the version of lnd decide. If a version of lnd >= 0.15.0-beta is
// detected then a Taproot account is created. For earlier versions a legacy
// account is created. If a version of lnd >= 0.16.0-beta is detected, then a
// Taproot v2 account is created.
AccountVersion_ACCOUNT_VERSION_LND_DEPENDENT AccountVersion = 0
// A legacy SegWit v0 p2wsh account with a single script.
AccountVersion_ACCOUNT_VERSION_LEGACY AccountVersion = 1
// A Taproot enabled account with MuSig2 combined internal key and the expiry
// script as a single tap script leaf.
AccountVersion_ACCOUNT_VERSION_TAPROOT AccountVersion = 2
// A Taproot enabled account with MuSig2 combined internal key and the expiry
// script as a single tap script leaf. This version uses the MuSig2 v1.0.0-rc2
// protocol for creating the combined internal key. This can only be selected
// when the connected lnd version is >= 0.16.0-beta.
AccountVersion_ACCOUNT_VERSION_TAPROOT_V2 AccountVersion = 3
)
// Enum value maps for AccountVersion.
var (
AccountVersion_name = map[int32]string{
0: "ACCOUNT_VERSION_LND_DEPENDENT",
1: "ACCOUNT_VERSION_LEGACY",
2: "ACCOUNT_VERSION_TAPROOT",
3: "ACCOUNT_VERSION_TAPROOT_V2",
}
AccountVersion_value = map[string]int32{
"ACCOUNT_VERSION_LND_DEPENDENT": 0,
"ACCOUNT_VERSION_LEGACY": 1,
"ACCOUNT_VERSION_TAPROOT": 2,
"ACCOUNT_VERSION_TAPROOT_V2": 3,
}
)
func (x AccountVersion) Enum() *AccountVersion {
p := new(AccountVersion)
*p = x
return p
}
func (x AccountVersion) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (AccountVersion) Descriptor() protoreflect.EnumDescriptor {
return file_trader_proto_enumTypes[0].Descriptor()
}
func (AccountVersion) Type() protoreflect.EnumType {
return &file_trader_proto_enumTypes[0]
}
func (x AccountVersion) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use AccountVersion.Descriptor instead.
func (AccountVersion) EnumDescriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{0}
}
type AccountState int32
const (
// The state of an account when it is pending its confirmation on-chain.
AccountState_PENDING_OPEN AccountState = 0
// The state of an account when it has undergone an update on-chain either as
// part of a matched order or a trader modification and it is pending its
// confirmation on-chain.
AccountState_PENDING_UPDATE AccountState = 1
// The state of an account once it has confirmed on-chain.
AccountState_OPEN AccountState = 2
// The state of an account once its expiration has been reached and its closing
// transaction has confirmed.
AccountState_EXPIRED AccountState = 3
// The state of an account when we're waiting for the closing transaction of
// an account to confirm that required cooperation with the auctioneer.
AccountState_PENDING_CLOSED AccountState = 4
// The state of an account once its closing transaction has confirmed.
AccountState_CLOSED AccountState = 5
// The state of an account that indicates that the account was attempted to be
// recovered but failed because the opening transaction wasn't found by lnd.
// This could be because it was never published or it never confirmed. Then the
// funds are SAFU and the account can be considered to never have been opened
// in the first place.
AccountState_RECOVERY_FAILED AccountState = 6
// The account has recently participated in a batch and is not yet confirmed.
AccountState_PENDING_BATCH AccountState = 7
)
// Enum value maps for AccountState.
var (
AccountState_name = map[int32]string{
0: "PENDING_OPEN",
1: "PENDING_UPDATE",
2: "OPEN",
3: "EXPIRED",
4: "PENDING_CLOSED",
5: "CLOSED",
6: "RECOVERY_FAILED",
7: "PENDING_BATCH",
}
AccountState_value = map[string]int32{
"PENDING_OPEN": 0,
"PENDING_UPDATE": 1,
"OPEN": 2,
"EXPIRED": 3,
"PENDING_CLOSED": 4,
"CLOSED": 5,
"RECOVERY_FAILED": 6,
"PENDING_BATCH": 7,
}
)
func (x AccountState) Enum() *AccountState {
p := new(AccountState)
*p = x
return p
}
func (x AccountState) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (AccountState) Descriptor() protoreflect.EnumDescriptor {
return file_trader_proto_enumTypes[1].Descriptor()
}
func (AccountState) Type() protoreflect.EnumType {
return &file_trader_proto_enumTypes[1]
}
func (x AccountState) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use AccountState.Descriptor instead.
func (AccountState) EnumDescriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{1}
}
type MatchState int32
const (
// The OrderMatchPrepare message from the auctioneer was received initially.
MatchState_PREPARE MatchState = 0
// The OrderMatchPrepare message from the auctioneer was processed successfully
// and the batch was accepted.
MatchState_ACCEPTED MatchState = 1
// The order was rejected by the trader daemon, either as an answer to a
// OrderMatchSignBegin or OrderMatchFinalize message from the auctioneer.
MatchState_REJECTED MatchState = 2
// The OrderMatchSignBegin message from the auctioneer was processed
// successfully.
MatchState_SIGNED MatchState = 3
// The OrderMatchFinalize message from the auctioneer was processed
// successfully.
MatchState_FINALIZED MatchState = 4
)
// Enum value maps for MatchState.
var (
MatchState_name = map[int32]string{
0: "PREPARE",
1: "ACCEPTED",
2: "REJECTED",
3: "SIGNED",
4: "FINALIZED",
}
MatchState_value = map[string]int32{
"PREPARE": 0,
"ACCEPTED": 1,
"REJECTED": 2,
"SIGNED": 3,
"FINALIZED": 4,
}
)
func (x MatchState) Enum() *MatchState {
p := new(MatchState)
*p = x
return p
}
func (x MatchState) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (MatchState) Descriptor() protoreflect.EnumDescriptor {
return file_trader_proto_enumTypes[2].Descriptor()
}
func (MatchState) Type() protoreflect.EnumType {
return &file_trader_proto_enumTypes[2]
}
func (x MatchState) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use MatchState.Descriptor instead.
func (MatchState) EnumDescriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{2}
}
type MatchRejectReason int32
const (
// No reject occurred, this is the default value.
MatchRejectReason_NONE MatchRejectReason = 0
// The client didn't come up with the same result as the server and is
// rejecting the batch because of that.
MatchRejectReason_SERVER_MISBEHAVIOR MatchRejectReason = 1
// The client doesn't support the current batch verification version the
// server is using.
MatchRejectReason_BATCH_VERSION_MISMATCH MatchRejectReason = 2
// The client rejects some of the orders, not the full batch. This reason is
// set on matches for orders that were in the same batch as partial reject ones
// but were not themselves rejected.
MatchRejectReason_PARTIAL_REJECT_COLLATERAL MatchRejectReason = 3
// The trader's client has a preference to only match orders with peers it
// doesn't already have channels with. The order that is rejected with this
// reason type comes from a peer that the trader already has channels with.
MatchRejectReason_PARTIAL_REJECT_DUPLICATE_PEER MatchRejectReason = 4
// The trader's client couldn't connect to the remote node of the matched
// order or the channel funding could not be initialized for another
// reason. This could also be the rejecting node's fault if their
// connection is not stable. Using this code can have a negative impact on
// the reputation score of both nodes, depending on the number of errors
// recorded.
MatchRejectReason_PARTIAL_REJECT_CHANNEL_FUNDING_FAILED MatchRejectReason = 5
)
// Enum value maps for MatchRejectReason.
var (
MatchRejectReason_name = map[int32]string{
0: "NONE",
1: "SERVER_MISBEHAVIOR",
2: "BATCH_VERSION_MISMATCH",
3: "PARTIAL_REJECT_COLLATERAL",
4: "PARTIAL_REJECT_DUPLICATE_PEER",
5: "PARTIAL_REJECT_CHANNEL_FUNDING_FAILED",
}
MatchRejectReason_value = map[string]int32{
"NONE": 0,
"SERVER_MISBEHAVIOR": 1,
"BATCH_VERSION_MISMATCH": 2,
"PARTIAL_REJECT_COLLATERAL": 3,
"PARTIAL_REJECT_DUPLICATE_PEER": 4,
"PARTIAL_REJECT_CHANNEL_FUNDING_FAILED": 5,
}
)
func (x MatchRejectReason) Enum() *MatchRejectReason {
p := new(MatchRejectReason)
*p = x
return p
}
func (x MatchRejectReason) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (MatchRejectReason) Descriptor() protoreflect.EnumDescriptor {
return file_trader_proto_enumTypes[3].Descriptor()
}
func (MatchRejectReason) Type() protoreflect.EnumType {
return &file_trader_proto_enumTypes[3]
}
func (x MatchRejectReason) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use MatchRejectReason.Descriptor instead.
func (MatchRejectReason) EnumDescriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{3}
}
type InitAccountRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
AccountValue uint64 `protobuf:"varint,1,opt,name=account_value,json=accountValue,proto3" json:"account_value,omitempty"`
// Types that are assignable to AccountExpiry:
//
// *InitAccountRequest_AbsoluteHeight
// *InitAccountRequest_RelativeHeight
AccountExpiry isInitAccountRequest_AccountExpiry `protobuf_oneof:"account_expiry"`
// Types that are assignable to Fees:
//
// *InitAccountRequest_ConfTarget
// *InitAccountRequest_FeeRateSatPerKw
Fees isInitAccountRequest_Fees `protobuf_oneof:"fees"`
// An optional identification string that will be appended to the user agent
// string sent to the server to give information about the usage of pool. This
// initiator part is meant for user interfaces to add their name to give the
// full picture of the binary used (poold, LiT) and the method used for opening
// the account (pool CLI, LiT UI, other 3rd party UI).
Initiator string `protobuf:"bytes,5,opt,name=initiator,proto3" json:"initiator,omitempty"`
// The version of account to create.
Version AccountVersion `protobuf:"varint,7,opt,name=version,proto3,enum=poolrpc.AccountVersion" json:"version,omitempty"`
}
func (x *InitAccountRequest) Reset() {
*x = InitAccountRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *InitAccountRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*InitAccountRequest) ProtoMessage() {}
func (x *InitAccountRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 InitAccountRequest.ProtoReflect.Descriptor instead.
func (*InitAccountRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{0}
}
func (x *InitAccountRequest) GetAccountValue() uint64 {
if x != nil {
return x.AccountValue
}
return 0
}
func (m *InitAccountRequest) GetAccountExpiry() isInitAccountRequest_AccountExpiry {
if m != nil {
return m.AccountExpiry
}
return nil
}
func (x *InitAccountRequest) GetAbsoluteHeight() uint32 {
if x, ok := x.GetAccountExpiry().(*InitAccountRequest_AbsoluteHeight); ok {
return x.AbsoluteHeight
}
return 0
}
func (x *InitAccountRequest) GetRelativeHeight() uint32 {
if x, ok := x.GetAccountExpiry().(*InitAccountRequest_RelativeHeight); ok {
return x.RelativeHeight
}
return 0
}
func (m *InitAccountRequest) GetFees() isInitAccountRequest_Fees {
if m != nil {
return m.Fees
}
return nil
}
func (x *InitAccountRequest) GetConfTarget() uint32 {
if x, ok := x.GetFees().(*InitAccountRequest_ConfTarget); ok {
return x.ConfTarget
}
return 0
}
func (x *InitAccountRequest) GetFeeRateSatPerKw() uint64 {
if x, ok := x.GetFees().(*InitAccountRequest_FeeRateSatPerKw); ok {
return x.FeeRateSatPerKw
}
return 0
}
func (x *InitAccountRequest) GetInitiator() string {
if x != nil {
return x.Initiator
}
return ""
}
func (x *InitAccountRequest) GetVersion() AccountVersion {
if x != nil {
return x.Version
}
return AccountVersion_ACCOUNT_VERSION_LND_DEPENDENT
}
type isInitAccountRequest_AccountExpiry interface {
isInitAccountRequest_AccountExpiry()
}
type InitAccountRequest_AbsoluteHeight struct {
AbsoluteHeight uint32 `protobuf:"varint,2,opt,name=absolute_height,json=absoluteHeight,proto3,oneof"`
}
type InitAccountRequest_RelativeHeight struct {
RelativeHeight uint32 `protobuf:"varint,3,opt,name=relative_height,json=relativeHeight,proto3,oneof"`
}
func (*InitAccountRequest_AbsoluteHeight) isInitAccountRequest_AccountExpiry() {}
func (*InitAccountRequest_RelativeHeight) isInitAccountRequest_AccountExpiry() {}
type isInitAccountRequest_Fees interface {
isInitAccountRequest_Fees()
}
type InitAccountRequest_ConfTarget struct {
// The target number of blocks that the transaction should be confirmed in.
ConfTarget uint32 `protobuf:"varint,4,opt,name=conf_target,json=confTarget,proto3,oneof"`
}
type InitAccountRequest_FeeRateSatPerKw struct {
// The fee rate, in satoshis per kw, to use for the initial funding
// transaction.
FeeRateSatPerKw uint64 `protobuf:"varint,6,opt,name=fee_rate_sat_per_kw,json=feeRateSatPerKw,proto3,oneof"`
}
func (*InitAccountRequest_ConfTarget) isInitAccountRequest_Fees() {}
func (*InitAccountRequest_FeeRateSatPerKw) isInitAccountRequest_Fees() {}
type QuoteAccountRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
AccountValue uint64 `protobuf:"varint,1,opt,name=account_value,json=accountValue,proto3" json:"account_value,omitempty"`
// Types that are assignable to Fees:
//
// *QuoteAccountRequest_ConfTarget
Fees isQuoteAccountRequest_Fees `protobuf_oneof:"fees"`
}
func (x *QuoteAccountRequest) Reset() {
*x = QuoteAccountRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *QuoteAccountRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*QuoteAccountRequest) ProtoMessage() {}
func (x *QuoteAccountRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 QuoteAccountRequest.ProtoReflect.Descriptor instead.
func (*QuoteAccountRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{1}
}
func (x *QuoteAccountRequest) GetAccountValue() uint64 {
if x != nil {
return x.AccountValue
}
return 0
}
func (m *QuoteAccountRequest) GetFees() isQuoteAccountRequest_Fees {
if m != nil {
return m.Fees
}
return nil
}
func (x *QuoteAccountRequest) GetConfTarget() uint32 {
if x, ok := x.GetFees().(*QuoteAccountRequest_ConfTarget); ok {
return x.ConfTarget
}
return 0
}
type isQuoteAccountRequest_Fees interface {
isQuoteAccountRequest_Fees()
}
type QuoteAccountRequest_ConfTarget struct {
// The target number of blocks that the transaction should be confirmed in.
ConfTarget uint32 `protobuf:"varint,2,opt,name=conf_target,json=confTarget,proto3,oneof"`
}
func (*QuoteAccountRequest_ConfTarget) isQuoteAccountRequest_Fees() {}
type QuoteAccountResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
MinerFeeRateSatPerKw uint64 `protobuf:"varint,1,opt,name=miner_fee_rate_sat_per_kw,json=minerFeeRateSatPerKw,proto3" json:"miner_fee_rate_sat_per_kw,omitempty"`
MinerFeeTotal uint64 `protobuf:"varint,2,opt,name=miner_fee_total,json=minerFeeTotal,proto3" json:"miner_fee_total,omitempty"`
}
func (x *QuoteAccountResponse) Reset() {
*x = QuoteAccountResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *QuoteAccountResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*QuoteAccountResponse) ProtoMessage() {}
func (x *QuoteAccountResponse) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 QuoteAccountResponse.ProtoReflect.Descriptor instead.
func (*QuoteAccountResponse) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{2}
}
func (x *QuoteAccountResponse) GetMinerFeeRateSatPerKw() uint64 {
if x != nil {
return x.MinerFeeRateSatPerKw
}
return 0
}
func (x *QuoteAccountResponse) GetMinerFeeTotal() uint64 {
if x != nil {
return x.MinerFeeTotal
}
return 0
}
type ListAccountsRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Only list accounts that are still active.
ActiveOnly bool `protobuf:"varint,1,opt,name=active_only,json=activeOnly,proto3" json:"active_only,omitempty"`
}
func (x *ListAccountsRequest) Reset() {
*x = ListAccountsRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListAccountsRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListAccountsRequest) ProtoMessage() {}
func (x *ListAccountsRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 ListAccountsRequest.ProtoReflect.Descriptor instead.
func (*ListAccountsRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{3}
}
func (x *ListAccountsRequest) GetActiveOnly() bool {
if x != nil {
return x.ActiveOnly
}
return false
}
type ListAccountsResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Accounts []*Account `protobuf:"bytes,1,rep,name=accounts,proto3" json:"accounts,omitempty"`
}
func (x *ListAccountsResponse) Reset() {
*x = ListAccountsResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListAccountsResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListAccountsResponse) ProtoMessage() {}
func (x *ListAccountsResponse) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 ListAccountsResponse.ProtoReflect.Descriptor instead.
func (*ListAccountsResponse) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{4}
}
func (x *ListAccountsResponse) GetAccounts() []*Account {
if x != nil {
return x.Accounts
}
return nil
}
type Output struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The value, in satoshis, of the output.
ValueSat uint64 `protobuf:"varint,1,opt,name=value_sat,json=valueSat,proto3" json:"value_sat,omitempty"`
// The address corresponding to the output.
Address string `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"`
}
func (x *Output) Reset() {
*x = Output{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Output) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Output) ProtoMessage() {}
func (x *Output) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 Output.ProtoReflect.Descriptor instead.
func (*Output) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{5}
}
func (x *Output) GetValueSat() uint64 {
if x != nil {
return x.ValueSat
}
return 0
}
func (x *Output) GetAddress() string {
if x != nil {
return x.Address
}
return ""
}
type OutputWithFee struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The address corresponding to the output.
Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
// Types that are assignable to Fees:
//
// *OutputWithFee_ConfTarget
// *OutputWithFee_FeeRateSatPerKw
Fees isOutputWithFee_Fees `protobuf_oneof:"fees"`
}
func (x *OutputWithFee) Reset() {
*x = OutputWithFee{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *OutputWithFee) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*OutputWithFee) ProtoMessage() {}
func (x *OutputWithFee) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 OutputWithFee.ProtoReflect.Descriptor instead.
func (*OutputWithFee) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{6}
}
func (x *OutputWithFee) GetAddress() string {
if x != nil {
return x.Address
}
return ""
}
func (m *OutputWithFee) GetFees() isOutputWithFee_Fees {
if m != nil {
return m.Fees
}
return nil
}
func (x *OutputWithFee) GetConfTarget() uint32 {
if x, ok := x.GetFees().(*OutputWithFee_ConfTarget); ok {
return x.ConfTarget
}
return 0
}
func (x *OutputWithFee) GetFeeRateSatPerKw() uint64 {
if x, ok := x.GetFees().(*OutputWithFee_FeeRateSatPerKw); ok {
return x.FeeRateSatPerKw
}
return 0
}
type isOutputWithFee_Fees interface {
isOutputWithFee_Fees()
}
type OutputWithFee_ConfTarget struct {
// The target number of blocks that the transaction should be confirmed in.
ConfTarget uint32 `protobuf:"varint,2,opt,name=conf_target,json=confTarget,proto3,oneof"`
}
type OutputWithFee_FeeRateSatPerKw struct {
// The fee rate, in satoshis per kw, to use for the withdrawal transaction.
FeeRateSatPerKw uint64 `protobuf:"varint,3,opt,name=fee_rate_sat_per_kw,json=feeRateSatPerKw,proto3,oneof"`
}
func (*OutputWithFee_ConfTarget) isOutputWithFee_Fees() {}
func (*OutputWithFee_FeeRateSatPerKw) isOutputWithFee_Fees() {}
type OutputsWithImplicitFee struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Outputs []*Output `protobuf:"bytes,1,rep,name=outputs,proto3" json:"outputs,omitempty"`
}
func (x *OutputsWithImplicitFee) Reset() {
*x = OutputsWithImplicitFee{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *OutputsWithImplicitFee) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*OutputsWithImplicitFee) ProtoMessage() {}
func (x *OutputsWithImplicitFee) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 OutputsWithImplicitFee.ProtoReflect.Descriptor instead.
func (*OutputsWithImplicitFee) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{7}
}
func (x *OutputsWithImplicitFee) GetOutputs() []*Output {
if x != nil {
return x.Outputs
}
return nil
}
type CloseAccountRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The trader key associated with the account that will be closed.
TraderKey []byte `protobuf:"bytes,1,opt,name=trader_key,json=traderKey,proto3" json:"trader_key,omitempty"`
// Types that are assignable to FundsDestination:
//
// *CloseAccountRequest_OutputWithFee
// *CloseAccountRequest_Outputs
FundsDestination isCloseAccountRequest_FundsDestination `protobuf_oneof:"funds_destination"`
}
func (x *CloseAccountRequest) Reset() {
*x = CloseAccountRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CloseAccountRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CloseAccountRequest) ProtoMessage() {}
func (x *CloseAccountRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 CloseAccountRequest.ProtoReflect.Descriptor instead.
func (*CloseAccountRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{8}
}
func (x *CloseAccountRequest) GetTraderKey() []byte {
if x != nil {
return x.TraderKey
}
return nil
}
func (m *CloseAccountRequest) GetFundsDestination() isCloseAccountRequest_FundsDestination {
if m != nil {
return m.FundsDestination
}
return nil
}
func (x *CloseAccountRequest) GetOutputWithFee() *OutputWithFee {
if x, ok := x.GetFundsDestination().(*CloseAccountRequest_OutputWithFee); ok {
return x.OutputWithFee
}
return nil
}
func (x *CloseAccountRequest) GetOutputs() *OutputsWithImplicitFee {
if x, ok := x.GetFundsDestination().(*CloseAccountRequest_Outputs); ok {
return x.Outputs
}
return nil
}
type isCloseAccountRequest_FundsDestination interface {
isCloseAccountRequest_FundsDestination()
}
type CloseAccountRequest_OutputWithFee struct {
// A single output/address to which the remaining funds of the account will
// be sent to at the specified fee. If an address is not specified, then
// the funds are sent to an address the backing lnd node controls.
OutputWithFee *OutputWithFee `protobuf:"bytes,2,opt,name=output_with_fee,json=outputWithFee,proto3,oneof"`
}
type CloseAccountRequest_Outputs struct {
// The outputs to which the remaining funds of the account will be sent to.
// This should only be used when wanting to create two or more outputs,
// otherwise OutputWithFee should be used instead. The fee of the account's
// closing transaction is implicitly defined by the combined value of all
// outputs.
Outputs *OutputsWithImplicitFee `protobuf:"bytes,3,opt,name=outputs,proto3,oneof"`
}
func (*CloseAccountRequest_OutputWithFee) isCloseAccountRequest_FundsDestination() {}
func (*CloseAccountRequest_Outputs) isCloseAccountRequest_FundsDestination() {}
type CloseAccountResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The hash of the closing transaction.
CloseTxid []byte `protobuf:"bytes,1,opt,name=close_txid,json=closeTxid,proto3" json:"close_txid,omitempty"`
}
func (x *CloseAccountResponse) Reset() {
*x = CloseAccountResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CloseAccountResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CloseAccountResponse) ProtoMessage() {}
func (x *CloseAccountResponse) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 CloseAccountResponse.ProtoReflect.Descriptor instead.
func (*CloseAccountResponse) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{9}
}
func (x *CloseAccountResponse) GetCloseTxid() []byte {
if x != nil {
return x.CloseTxid
}
return nil
}
type WithdrawAccountRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The trader key associated with the account that funds will be withdrawed
// from.
TraderKey []byte `protobuf:"bytes,1,opt,name=trader_key,json=traderKey,proto3" json:"trader_key,omitempty"`
// The outputs we'll withdraw funds from the account into.
Outputs []*Output `protobuf:"bytes,2,rep,name=outputs,proto3" json:"outputs,omitempty"`
// The fee rate, in satoshis per kw, to use for the withdrawal transaction.
FeeRateSatPerKw uint64 `protobuf:"varint,3,opt,name=fee_rate_sat_per_kw,json=feeRateSatPerKw,proto3" json:"fee_rate_sat_per_kw,omitempty"`
// Types that are assignable to AccountExpiry:
//
// *WithdrawAccountRequest_AbsoluteExpiry
// *WithdrawAccountRequest_RelativeExpiry
AccountExpiry isWithdrawAccountRequest_AccountExpiry `protobuf_oneof:"account_expiry"`
// The new version of the account. If this is set and is a valid version
// greater than the account's current version, then the account is upgraded to
// that version during the withdrawal.
NewVersion AccountVersion `protobuf:"varint,6,opt,name=new_version,json=newVersion,proto3,enum=poolrpc.AccountVersion" json:"new_version,omitempty"`
}
func (x *WithdrawAccountRequest) Reset() {
*x = WithdrawAccountRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *WithdrawAccountRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*WithdrawAccountRequest) ProtoMessage() {}
func (x *WithdrawAccountRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 WithdrawAccountRequest.ProtoReflect.Descriptor instead.
func (*WithdrawAccountRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{10}
}
func (x *WithdrawAccountRequest) GetTraderKey() []byte {
if x != nil {
return x.TraderKey
}
return nil
}
func (x *WithdrawAccountRequest) GetOutputs() []*Output {
if x != nil {
return x.Outputs
}
return nil
}
func (x *WithdrawAccountRequest) GetFeeRateSatPerKw() uint64 {
if x != nil {
return x.FeeRateSatPerKw
}
return 0
}
func (m *WithdrawAccountRequest) GetAccountExpiry() isWithdrawAccountRequest_AccountExpiry {
if m != nil {
return m.AccountExpiry
}
return nil
}
func (x *WithdrawAccountRequest) GetAbsoluteExpiry() uint32 {
if x, ok := x.GetAccountExpiry().(*WithdrawAccountRequest_AbsoluteExpiry); ok {
return x.AbsoluteExpiry
}
return 0
}
func (x *WithdrawAccountRequest) GetRelativeExpiry() uint32 {
if x, ok := x.GetAccountExpiry().(*WithdrawAccountRequest_RelativeExpiry); ok {
return x.RelativeExpiry
}
return 0
}
func (x *WithdrawAccountRequest) GetNewVersion() AccountVersion {
if x != nil {
return x.NewVersion
}
return AccountVersion_ACCOUNT_VERSION_LND_DEPENDENT
}
type isWithdrawAccountRequest_AccountExpiry interface {
isWithdrawAccountRequest_AccountExpiry()
}
type WithdrawAccountRequest_AbsoluteExpiry struct {
// The new absolute expiration height of the account.
AbsoluteExpiry uint32 `protobuf:"varint,4,opt,name=absolute_expiry,json=absoluteExpiry,proto3,oneof"`
}
type WithdrawAccountRequest_RelativeExpiry struct {
// The new relative expiration height of the account.
RelativeExpiry uint32 `protobuf:"varint,5,opt,name=relative_expiry,json=relativeExpiry,proto3,oneof"`
}
func (*WithdrawAccountRequest_AbsoluteExpiry) isWithdrawAccountRequest_AccountExpiry() {}
func (*WithdrawAccountRequest_RelativeExpiry) isWithdrawAccountRequest_AccountExpiry() {}
type WithdrawAccountResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The state of the account after processing the withdrawal.
Account *Account `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
// The transaction used to withdraw funds from the account.
WithdrawTxid []byte `protobuf:"bytes,2,opt,name=withdraw_txid,json=withdrawTxid,proto3" json:"withdraw_txid,omitempty"`
}
func (x *WithdrawAccountResponse) Reset() {
*x = WithdrawAccountResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *WithdrawAccountResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*WithdrawAccountResponse) ProtoMessage() {}
func (x *WithdrawAccountResponse) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 WithdrawAccountResponse.ProtoReflect.Descriptor instead.
func (*WithdrawAccountResponse) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{11}
}
func (x *WithdrawAccountResponse) GetAccount() *Account {
if x != nil {
return x.Account
}
return nil
}
func (x *WithdrawAccountResponse) GetWithdrawTxid() []byte {
if x != nil {
return x.WithdrawTxid
}
return nil
}
type DepositAccountRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The trader key associated with the account that funds will be deposited
// into.
TraderKey []byte `protobuf:"bytes,1,opt,name=trader_key,json=traderKey,proto3" json:"trader_key,omitempty"`
// The amount in satoshis to deposit into the account.
AmountSat uint64 `protobuf:"varint,2,opt,name=amount_sat,json=amountSat,proto3" json:"amount_sat,omitempty"`
// The fee rate, in satoshis per kw, to use for the deposit transaction.
FeeRateSatPerKw uint64 `protobuf:"varint,3,opt,name=fee_rate_sat_per_kw,json=feeRateSatPerKw,proto3" json:"fee_rate_sat_per_kw,omitempty"`
// Types that are assignable to AccountExpiry:
//
// *DepositAccountRequest_AbsoluteExpiry
// *DepositAccountRequest_RelativeExpiry
AccountExpiry isDepositAccountRequest_AccountExpiry `protobuf_oneof:"account_expiry"`
// The new version of the account. If this is set and is a valid version
// greater than the account's current version, then the account is upgraded to
// that version during the deposit.
NewVersion AccountVersion `protobuf:"varint,6,opt,name=new_version,json=newVersion,proto3,enum=poolrpc.AccountVersion" json:"new_version,omitempty"`
}
func (x *DepositAccountRequest) Reset() {
*x = DepositAccountRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DepositAccountRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DepositAccountRequest) ProtoMessage() {}
func (x *DepositAccountRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 DepositAccountRequest.ProtoReflect.Descriptor instead.
func (*DepositAccountRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{12}
}
func (x *DepositAccountRequest) GetTraderKey() []byte {
if x != nil {
return x.TraderKey
}
return nil
}
func (x *DepositAccountRequest) GetAmountSat() uint64 {
if x != nil {
return x.AmountSat
}
return 0
}
func (x *DepositAccountRequest) GetFeeRateSatPerKw() uint64 {
if x != nil {
return x.FeeRateSatPerKw
}
return 0
}
func (m *DepositAccountRequest) GetAccountExpiry() isDepositAccountRequest_AccountExpiry {
if m != nil {
return m.AccountExpiry
}
return nil
}
func (x *DepositAccountRequest) GetAbsoluteExpiry() uint32 {
if x, ok := x.GetAccountExpiry().(*DepositAccountRequest_AbsoluteExpiry); ok {
return x.AbsoluteExpiry
}
return 0
}
func (x *DepositAccountRequest) GetRelativeExpiry() uint32 {
if x, ok := x.GetAccountExpiry().(*DepositAccountRequest_RelativeExpiry); ok {
return x.RelativeExpiry
}
return 0
}
func (x *DepositAccountRequest) GetNewVersion() AccountVersion {
if x != nil {
return x.NewVersion
}
return AccountVersion_ACCOUNT_VERSION_LND_DEPENDENT
}
type isDepositAccountRequest_AccountExpiry interface {
isDepositAccountRequest_AccountExpiry()
}
type DepositAccountRequest_AbsoluteExpiry struct {
// The new absolute expiration height of the account.
AbsoluteExpiry uint32 `protobuf:"varint,4,opt,name=absolute_expiry,json=absoluteExpiry,proto3,oneof"`
}
type DepositAccountRequest_RelativeExpiry struct {
// The new relative expiration height of the account.
RelativeExpiry uint32 `protobuf:"varint,5,opt,name=relative_expiry,json=relativeExpiry,proto3,oneof"`
}
func (*DepositAccountRequest_AbsoluteExpiry) isDepositAccountRequest_AccountExpiry() {}
func (*DepositAccountRequest_RelativeExpiry) isDepositAccountRequest_AccountExpiry() {}
type DepositAccountResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The state of the account after processing the deposit.
Account *Account `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
// The transaction used to deposit funds into the account.
DepositTxid []byte `protobuf:"bytes,2,opt,name=deposit_txid,json=depositTxid,proto3" json:"deposit_txid,omitempty"`
}
func (x *DepositAccountResponse) Reset() {
*x = DepositAccountResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DepositAccountResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DepositAccountResponse) ProtoMessage() {}
func (x *DepositAccountResponse) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 DepositAccountResponse.ProtoReflect.Descriptor instead.
func (*DepositAccountResponse) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{13}
}
func (x *DepositAccountResponse) GetAccount() *Account {
if x != nil {
return x.Account
}
return nil
}
func (x *DepositAccountResponse) GetDepositTxid() []byte {
if x != nil {
return x.DepositTxid
}
return nil
}
type RenewAccountRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The key associated with the account to renew.
AccountKey []byte `protobuf:"bytes,1,opt,name=account_key,json=accountKey,proto3" json:"account_key,omitempty"`
// Types that are assignable to AccountExpiry:
//
// *RenewAccountRequest_AbsoluteExpiry
// *RenewAccountRequest_RelativeExpiry
AccountExpiry isRenewAccountRequest_AccountExpiry `protobuf_oneof:"account_expiry"`
// The fee rate, in satoshis per kw, to use for the renewal transaction.
FeeRateSatPerKw uint64 `protobuf:"varint,4,opt,name=fee_rate_sat_per_kw,json=feeRateSatPerKw,proto3" json:"fee_rate_sat_per_kw,omitempty"`
// The new version of the account. If this is set and is a valid version
// greater than the account's current version, then the account is upgraded to
// that version during the renewal.
NewVersion AccountVersion `protobuf:"varint,5,opt,name=new_version,json=newVersion,proto3,enum=poolrpc.AccountVersion" json:"new_version,omitempty"`
}
func (x *RenewAccountRequest) Reset() {
*x = RenewAccountRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RenewAccountRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RenewAccountRequest) ProtoMessage() {}
func (x *RenewAccountRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 RenewAccountRequest.ProtoReflect.Descriptor instead.
func (*RenewAccountRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{14}
}
func (x *RenewAccountRequest) GetAccountKey() []byte {
if x != nil {
return x.AccountKey
}
return nil
}
func (m *RenewAccountRequest) GetAccountExpiry() isRenewAccountRequest_AccountExpiry {
if m != nil {
return m.AccountExpiry
}
return nil
}
func (x *RenewAccountRequest) GetAbsoluteExpiry() uint32 {
if x, ok := x.GetAccountExpiry().(*RenewAccountRequest_AbsoluteExpiry); ok {
return x.AbsoluteExpiry
}
return 0
}
func (x *RenewAccountRequest) GetRelativeExpiry() uint32 {
if x, ok := x.GetAccountExpiry().(*RenewAccountRequest_RelativeExpiry); ok {
return x.RelativeExpiry
}
return 0
}
func (x *RenewAccountRequest) GetFeeRateSatPerKw() uint64 {
if x != nil {
return x.FeeRateSatPerKw
}
return 0
}
func (x *RenewAccountRequest) GetNewVersion() AccountVersion {
if x != nil {
return x.NewVersion
}
return AccountVersion_ACCOUNT_VERSION_LND_DEPENDENT
}
type isRenewAccountRequest_AccountExpiry interface {
isRenewAccountRequest_AccountExpiry()
}
type RenewAccountRequest_AbsoluteExpiry struct {
// The new absolute expiration height of the account.
AbsoluteExpiry uint32 `protobuf:"varint,2,opt,name=absolute_expiry,json=absoluteExpiry,proto3,oneof"`
}
type RenewAccountRequest_RelativeExpiry struct {
// The new relative expiration height of the account.
RelativeExpiry uint32 `protobuf:"varint,3,opt,name=relative_expiry,json=relativeExpiry,proto3,oneof"`
}
func (*RenewAccountRequest_AbsoluteExpiry) isRenewAccountRequest_AccountExpiry() {}
func (*RenewAccountRequest_RelativeExpiry) isRenewAccountRequest_AccountExpiry() {}
type RenewAccountResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The state of the account after processing the renewal.
Account *Account `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
// The transaction used to renew the expiration of the account.
RenewalTxid []byte `protobuf:"bytes,2,opt,name=renewal_txid,json=renewalTxid,proto3" json:"renewal_txid,omitempty"`
}
func (x *RenewAccountResponse) Reset() {
*x = RenewAccountResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RenewAccountResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RenewAccountResponse) ProtoMessage() {}
func (x *RenewAccountResponse) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 RenewAccountResponse.ProtoReflect.Descriptor instead.
func (*RenewAccountResponse) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{15}
}
func (x *RenewAccountResponse) GetAccount() *Account {
if x != nil {
return x.Account
}
return nil
}
func (x *RenewAccountResponse) GetRenewalTxid() []byte {
if x != nil {
return x.RenewalTxid
}
return nil
}
type BumpAccountFeeRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The trader key associated with the account that will have its fee bumped.
TraderKey []byte `protobuf:"bytes,1,opt,name=trader_key,json=traderKey,proto3" json:"trader_key,omitempty"`
// The new fee rate, in satoshis per kw, to use for the child of the account
// transaction.
FeeRateSatPerKw uint64 `protobuf:"varint,2,opt,name=fee_rate_sat_per_kw,json=feeRateSatPerKw,proto3" json:"fee_rate_sat_per_kw,omitempty"`
}
func (x *BumpAccountFeeRequest) Reset() {
*x = BumpAccountFeeRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *BumpAccountFeeRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*BumpAccountFeeRequest) ProtoMessage() {}
func (x *BumpAccountFeeRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 BumpAccountFeeRequest.ProtoReflect.Descriptor instead.
func (*BumpAccountFeeRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{16}
}
func (x *BumpAccountFeeRequest) GetTraderKey() []byte {
if x != nil {
return x.TraderKey
}
return nil
}
func (x *BumpAccountFeeRequest) GetFeeRateSatPerKw() uint64 {
if x != nil {
return x.FeeRateSatPerKw
}
return 0
}
type BumpAccountFeeResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *BumpAccountFeeResponse) Reset() {
*x = BumpAccountFeeResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[17]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *BumpAccountFeeResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*BumpAccountFeeResponse) ProtoMessage() {}
func (x *BumpAccountFeeResponse) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 BumpAccountFeeResponse.ProtoReflect.Descriptor instead.
func (*BumpAccountFeeResponse) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{17}
}
type Account struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The identifying component of an account. This is the key used for the trader
// in the 2-of-2 multi-sig construction of an account with an auctioneer.
TraderKey []byte `protobuf:"bytes,1,opt,name=trader_key,json=traderKey,proto3" json:"trader_key,omitempty"`
// The current outpoint associated with the account. This will change every
// time the account has been updated.
Outpoint *auctioneerrpc.OutPoint `protobuf:"bytes,2,opt,name=outpoint,proto3" json:"outpoint,omitempty"`
// The current total amount of satoshis in the account.
Value uint64 `protobuf:"varint,3,opt,name=value,proto3" json:"value,omitempty"`
// The amount of satoshis in the account that is available, meaning not
// allocated to any oustanding orders.
AvailableBalance uint64 `protobuf:"varint,4,opt,name=available_balance,json=availableBalance,proto3" json:"available_balance,omitempty"`
// The height at which the account will expire.
ExpirationHeight uint32 `protobuf:"varint,5,opt,name=expiration_height,json=expirationHeight,proto3" json:"expiration_height,omitempty"`
// The current state of the account.
State AccountState `protobuf:"varint,6,opt,name=state,proto3,enum=poolrpc.AccountState" json:"state,omitempty"`
// The hash of the account's latest transaction.
LatestTxid []byte `protobuf:"bytes,7,opt,name=latest_txid,json=latestTxid,proto3" json:"latest_txid,omitempty"`
// The current version of the account.
Version AccountVersion `protobuf:"varint,8,opt,name=version,proto3,enum=poolrpc.AccountVersion" json:"version,omitempty"`
}
func (x *Account) Reset() {
*x = Account{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[18]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Account) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Account) ProtoMessage() {}
func (x *Account) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 Account.ProtoReflect.Descriptor instead.
func (*Account) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{18}
}
func (x *Account) GetTraderKey() []byte {
if x != nil {
return x.TraderKey
}
return nil
}
func (x *Account) GetOutpoint() *auctioneerrpc.OutPoint {
if x != nil {
return x.Outpoint
}
return nil
}
func (x *Account) GetValue() uint64 {
if x != nil {
return x.Value
}
return 0
}
func (x *Account) GetAvailableBalance() uint64 {
if x != nil {
return x.AvailableBalance
}
return 0
}
func (x *Account) GetExpirationHeight() uint32 {
if x != nil {
return x.ExpirationHeight
}
return 0
}
func (x *Account) GetState() AccountState {
if x != nil {
return x.State
}
return AccountState_PENDING_OPEN
}
func (x *Account) GetLatestTxid() []byte {
if x != nil {
return x.LatestTxid
}
return nil
}
func (x *Account) GetVersion() AccountVersion {
if x != nil {
return x.Version
}
return AccountVersion_ACCOUNT_VERSION_LND_DEPENDENT
}
type SubmitOrderRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Types that are assignable to Details:
//
// *SubmitOrderRequest_Ask
// *SubmitOrderRequest_Bid
Details isSubmitOrderRequest_Details `protobuf_oneof:"details"`
// An optional identification string that will be appended to the user agent
// string sent to the server to give information about the usage of pool. This
// initiator part is meant for user interfaces to add their name to give the
// full picture of the binary used (poold, LiT) and the method used for
// submitting the order (pool CLI, LiT UI, other 3rd party UI).
Initiator string `protobuf:"bytes,3,opt,name=initiator,proto3" json:"initiator,omitempty"`
}
func (x *SubmitOrderRequest) Reset() {
*x = SubmitOrderRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[19]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SubmitOrderRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SubmitOrderRequest) ProtoMessage() {}
func (x *SubmitOrderRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 SubmitOrderRequest.ProtoReflect.Descriptor instead.
func (*SubmitOrderRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{19}
}
func (m *SubmitOrderRequest) GetDetails() isSubmitOrderRequest_Details {
if m != nil {
return m.Details
}
return nil
}
func (x *SubmitOrderRequest) GetAsk() *Ask {
if x, ok := x.GetDetails().(*SubmitOrderRequest_Ask); ok {
return x.Ask
}
return nil
}
func (x *SubmitOrderRequest) GetBid() *Bid {
if x, ok := x.GetDetails().(*SubmitOrderRequest_Bid); ok {
return x.Bid
}
return nil
}
func (x *SubmitOrderRequest) GetInitiator() string {
if x != nil {
return x.Initiator
}
return ""
}
type isSubmitOrderRequest_Details interface {
isSubmitOrderRequest_Details()
}
type SubmitOrderRequest_Ask struct {
Ask *Ask `protobuf:"bytes,1,opt,name=ask,proto3,oneof"`
}
type SubmitOrderRequest_Bid struct {
Bid *Bid `protobuf:"bytes,2,opt,name=bid,proto3,oneof"`
}
func (*SubmitOrderRequest_Ask) isSubmitOrderRequest_Details() {}
func (*SubmitOrderRequest_Bid) isSubmitOrderRequest_Details() {}
type SubmitOrderResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Types that are assignable to Details:
//
// *SubmitOrderResponse_InvalidOrder
// *SubmitOrderResponse_AcceptedOrderNonce
Details isSubmitOrderResponse_Details `protobuf_oneof:"details"`
// In case a bid order was submitted for a sidecar ticket, that ticket is
// updated with the new state and bid order nonce.
UpdatedSidecarTicket string `protobuf:"bytes,3,opt,name=updated_sidecar_ticket,json=updatedSidecarTicket,proto3" json:"updated_sidecar_ticket,omitempty"`
}
func (x *SubmitOrderResponse) Reset() {
*x = SubmitOrderResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[20]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SubmitOrderResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SubmitOrderResponse) ProtoMessage() {}
func (x *SubmitOrderResponse) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 SubmitOrderResponse.ProtoReflect.Descriptor instead.
func (*SubmitOrderResponse) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{20}
}
func (m *SubmitOrderResponse) GetDetails() isSubmitOrderResponse_Details {
if m != nil {
return m.Details
}
return nil
}
func (x *SubmitOrderResponse) GetInvalidOrder() *auctioneerrpc.InvalidOrder {
if x, ok := x.GetDetails().(*SubmitOrderResponse_InvalidOrder); ok {
return x.InvalidOrder
}
return nil
}
func (x *SubmitOrderResponse) GetAcceptedOrderNonce() []byte {
if x, ok := x.GetDetails().(*SubmitOrderResponse_AcceptedOrderNonce); ok {
return x.AcceptedOrderNonce
}
return nil
}
func (x *SubmitOrderResponse) GetUpdatedSidecarTicket() string {
if x != nil {
return x.UpdatedSidecarTicket
}
return ""
}
type isSubmitOrderResponse_Details interface {
isSubmitOrderResponse_Details()
}
type SubmitOrderResponse_InvalidOrder struct {
// Order failed with the given reason.
InvalidOrder *auctioneerrpc.InvalidOrder `protobuf:"bytes,1,opt,name=invalid_order,json=invalidOrder,proto3,oneof"`
}
type SubmitOrderResponse_AcceptedOrderNonce struct {
// The order nonce of the accepted order.
AcceptedOrderNonce []byte `protobuf:"bytes,2,opt,name=accepted_order_nonce,json=acceptedOrderNonce,proto3,oneof"`
}
func (*SubmitOrderResponse_InvalidOrder) isSubmitOrderResponse_Details() {}
func (*SubmitOrderResponse_AcceptedOrderNonce) isSubmitOrderResponse_Details() {}
type ListOrdersRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Can be set to true to list the orders including all events, which can be
// very verbose.
Verbose bool `protobuf:"varint,1,opt,name=verbose,proto3" json:"verbose,omitempty"`
// Only list orders that are still active.
ActiveOnly bool `protobuf:"varint,2,opt,name=active_only,json=activeOnly,proto3" json:"active_only,omitempty"`
}
func (x *ListOrdersRequest) Reset() {
*x = ListOrdersRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[21]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListOrdersRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListOrdersRequest) ProtoMessage() {}
func (x *ListOrdersRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 ListOrdersRequest.ProtoReflect.Descriptor instead.
func (*ListOrdersRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{21}
}
func (x *ListOrdersRequest) GetVerbose() bool {
if x != nil {
return x.Verbose
}
return false
}
func (x *ListOrdersRequest) GetActiveOnly() bool {
if x != nil {
return x.ActiveOnly
}
return false
}
type ListOrdersResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Asks []*Ask `protobuf:"bytes,1,rep,name=asks,proto3" json:"asks,omitempty"`
Bids []*Bid `protobuf:"bytes,2,rep,name=bids,proto3" json:"bids,omitempty"`
}
func (x *ListOrdersResponse) Reset() {
*x = ListOrdersResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[22]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListOrdersResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListOrdersResponse) ProtoMessage() {}
func (x *ListOrdersResponse) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 ListOrdersResponse.ProtoReflect.Descriptor instead.
func (*ListOrdersResponse) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{22}
}
func (x *ListOrdersResponse) GetAsks() []*Ask {
if x != nil {
return x.Asks
}
return nil
}
func (x *ListOrdersResponse) GetBids() []*Bid {
if x != nil {
return x.Bids
}
return nil
}
type CancelOrderRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
OrderNonce []byte `protobuf:"bytes,1,opt,name=order_nonce,json=orderNonce,proto3" json:"order_nonce,omitempty"`
}
func (x *CancelOrderRequest) Reset() {
*x = CancelOrderRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[23]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CancelOrderRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CancelOrderRequest) ProtoMessage() {}
func (x *CancelOrderRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 CancelOrderRequest.ProtoReflect.Descriptor instead.
func (*CancelOrderRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{23}
}
func (x *CancelOrderRequest) GetOrderNonce() []byte {
if x != nil {
return x.OrderNonce
}
return nil
}
type CancelOrderResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *CancelOrderResponse) Reset() {
*x = CancelOrderResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[24]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CancelOrderResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CancelOrderResponse) ProtoMessage() {}
func (x *CancelOrderResponse) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 CancelOrderResponse.ProtoReflect.Descriptor instead.
func (*CancelOrderResponse) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{24}
}
type Order struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The trader's account key of the account that is used for the order.
TraderKey []byte `protobuf:"bytes,1,opt,name=trader_key,json=traderKey,proto3" json:"trader_key,omitempty"`
// Fixed order rate in parts per billion.
RateFixed uint32 `protobuf:"varint,2,opt,name=rate_fixed,json=rateFixed,proto3" json:"rate_fixed,omitempty"`
// Order amount in satoshis.
Amt uint64 `protobuf:"varint,3,opt,name=amt,proto3" json:"amt,omitempty"`
// Maximum fee rate the trader is willing to pay for the batch transaction,
// expressed in satoshis per 1000 weight units (sat/KW).
MaxBatchFeeRateSatPerKw uint64 `protobuf:"varint,4,opt,name=max_batch_fee_rate_sat_per_kw,json=maxBatchFeeRateSatPerKw,proto3" json:"max_batch_fee_rate_sat_per_kw,omitempty"`
// Order nonce, acts as unique order identifier.
OrderNonce []byte `protobuf:"bytes,5,opt,name=order_nonce,json=orderNonce,proto3" json:"order_nonce,omitempty"`
// The state the order currently is in.
State auctioneerrpc.OrderState `protobuf:"varint,6,opt,name=state,proto3,enum=poolrpc.OrderState" json:"state,omitempty"`
// The number of order units the amount corresponds to.
Units uint32 `protobuf:"varint,7,opt,name=units,proto3" json:"units,omitempty"`
// The number of currently unfilled units of this order. This will be equal to
// the total amount of units until the order has reached the state PARTIAL_FILL
// or EXECUTED.
UnitsUnfulfilled uint32 `protobuf:"varint,8,opt,name=units_unfulfilled,json=unitsUnfulfilled,proto3" json:"units_unfulfilled,omitempty"`
// The value reserved from the account by this order to ensure the account
// can pay execution and chain fees in case it gets matched.
ReservedValueSat uint64 `protobuf:"varint,9,opt,name=reserved_value_sat,json=reservedValueSat,proto3" json:"reserved_value_sat,omitempty"`
// The unix timestamp in nanoseconds the order was first created/submitted.
CreationTimestampNs uint64 `protobuf:"varint,10,opt,name=creation_timestamp_ns,json=creationTimestampNs,proto3" json:"creation_timestamp_ns,omitempty"`
// A list of events that were emitted for this order. This field is only set
// when the verbose flag is set to true in the request.
Events []*OrderEvent `protobuf:"bytes,11,rep,name=events,proto3" json:"events,omitempty"`
// The minimum number of order units that must be matched per order pair.
MinUnitsMatch uint32 `protobuf:"varint,12,opt,name=min_units_match,json=minUnitsMatch,proto3" json:"min_units_match,omitempty"`
// The channel type to use for the resulting matched channels.
ChannelType auctioneerrpc.OrderChannelType `protobuf:"varint,13,opt,name=channel_type,json=channelType,proto3,enum=poolrpc.OrderChannelType" json:"channel_type,omitempty"`
// List of nodes that will be allowed to match with our order. Incompatible
// with the `not_allowed_node_ids` field.
AllowedNodeIds [][]byte `protobuf:"bytes,14,rep,name=allowed_node_ids,json=allowedNodeIds,proto3" json:"allowed_node_ids,omitempty"`
// List of nodes that won't be allowed to match with our order. Incompatible
// with the `allowed_node_ids` field.
NotAllowedNodeIds [][]byte `protobuf:"bytes,15,rep,name=not_allowed_node_ids,json=notAllowedNodeIds,proto3" json:"not_allowed_node_ids,omitempty"`
// Auction type where this order must be considered during the matching.
AuctionType auctioneerrpc.AuctionType `protobuf:"varint,16,opt,name=auction_type,json=auctionType,proto3,enum=poolrpc.AuctionType" json:"auction_type,omitempty"`
// Flag used to signal that this order can be shared in public market
// places.
IsPublic bool `protobuf:"varint,17,opt,name=is_public,json=isPublic,proto3" json:"is_public,omitempty"`
}
func (x *Order) Reset() {
*x = Order{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[25]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Order) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Order) ProtoMessage() {}
func (x *Order) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 Order.ProtoReflect.Descriptor instead.
func (*Order) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{25}
}
func (x *Order) GetTraderKey() []byte {
if x != nil {
return x.TraderKey
}
return nil
}
func (x *Order) GetRateFixed() uint32 {
if x != nil {
return x.RateFixed
}
return 0
}
func (x *Order) GetAmt() uint64 {
if x != nil {
return x.Amt
}
return 0
}
func (x *Order) GetMaxBatchFeeRateSatPerKw() uint64 {
if x != nil {
return x.MaxBatchFeeRateSatPerKw
}
return 0
}
func (x *Order) GetOrderNonce() []byte {
if x != nil {
return x.OrderNonce
}
return nil
}
func (x *Order) GetState() auctioneerrpc.OrderState {
if x != nil {
return x.State
}
return auctioneerrpc.OrderState(0)
}
func (x *Order) GetUnits() uint32 {
if x != nil {
return x.Units
}
return 0
}
func (x *Order) GetUnitsUnfulfilled() uint32 {
if x != nil {
return x.UnitsUnfulfilled
}
return 0
}
func (x *Order) GetReservedValueSat() uint64 {
if x != nil {
return x.ReservedValueSat
}
return 0
}
func (x *Order) GetCreationTimestampNs() uint64 {
if x != nil {
return x.CreationTimestampNs
}
return 0
}
func (x *Order) GetEvents() []*OrderEvent {
if x != nil {
return x.Events
}
return nil
}
func (x *Order) GetMinUnitsMatch() uint32 {
if x != nil {
return x.MinUnitsMatch
}
return 0
}
func (x *Order) GetChannelType() auctioneerrpc.OrderChannelType {
if x != nil {
return x.ChannelType
}
return auctioneerrpc.OrderChannelType(0)
}
func (x *Order) GetAllowedNodeIds() [][]byte {
if x != nil {
return x.AllowedNodeIds
}
return nil
}
func (x *Order) GetNotAllowedNodeIds() [][]byte {
if x != nil {
return x.NotAllowedNodeIds
}
return nil
}
func (x *Order) GetAuctionType() auctioneerrpc.AuctionType {
if x != nil {
return x.AuctionType
}
return auctioneerrpc.AuctionType(0)
}
func (x *Order) GetIsPublic() bool {
if x != nil {
return x.IsPublic
}
return false
}
type Bid struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The common fields shared between both ask and bid order types.
Details *Order `protobuf:"bytes,1,opt,name=details,proto3" json:"details,omitempty"`
// Required number of blocks that a channel opened as a result of this bid
// should be kept open.
LeaseDurationBlocks uint32 `protobuf:"varint,2,opt,name=lease_duration_blocks,json=leaseDurationBlocks,proto3" json:"lease_duration_blocks,omitempty"`
// The version of the order format that is used. Will be increased once new
// features are added.
Version uint32 `protobuf:"varint,3,opt,name=version,proto3" json:"version,omitempty"`
// The minimum node tier this order should be matched with. Only asks backed by
// a node this tier or higher will be eligible for matching with this bid.
MinNodeTier auctioneerrpc.NodeTier `protobuf:"varint,4,opt,name=min_node_tier,json=minNodeTier,proto3,enum=poolrpc.NodeTier" json:"min_node_tier,omitempty"`
// Give the incoming channel that results from this bid being matched an
// initial outbound balance by adding additional funds from the taker's account
// into the channel. As a simplification for the execution protocol and the
// channel reserve calculations the min_chan_amt must be set to the full order
// amount. For the inbound liquidity market the self_chan_balance can be at
// most the same as the order amount.
SelfChanBalance uint64 `protobuf:"varint,5,opt,name=self_chan_balance,json=selfChanBalance,proto3" json:"self_chan_balance,omitempty"`
// If this bid order is meant to lease a channel for another node (which is
// dubbed a "sidecar channel") then this ticket contains all information
// required for setting up that sidecar channel. The ticket is expected to be
// the base58 encoded ticket, including the prefix and the checksum.
SidecarTicket string `protobuf:"bytes,6,opt,name=sidecar_ticket,json=sidecarTicket,proto3" json:"sidecar_ticket,omitempty"`
// Signals if this bid is interested in an announced or unannounced channel.
UnannouncedChannel bool `protobuf:"varint,7,opt,name=unannounced_channel,json=unannouncedChannel,proto3" json:"unannounced_channel,omitempty"`
// Signals if this bid is interested in a zero conf channel or not.
ZeroConfChannel bool `protobuf:"varint,8,opt,name=zero_conf_channel,json=zeroConfChannel,proto3" json:"zero_conf_channel,omitempty"`
}
func (x *Bid) Reset() {
*x = Bid{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[26]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Bid) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Bid) ProtoMessage() {}
func (x *Bid) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 Bid.ProtoReflect.Descriptor instead.
func (*Bid) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{26}
}
func (x *Bid) GetDetails() *Order {
if x != nil {
return x.Details
}
return nil
}
func (x *Bid) GetLeaseDurationBlocks() uint32 {
if x != nil {
return x.LeaseDurationBlocks
}
return 0
}
func (x *Bid) GetVersion() uint32 {
if x != nil {
return x.Version
}
return 0
}
func (x *Bid) GetMinNodeTier() auctioneerrpc.NodeTier {
if x != nil {
return x.MinNodeTier
}
return auctioneerrpc.NodeTier(0)
}
func (x *Bid) GetSelfChanBalance() uint64 {
if x != nil {
return x.SelfChanBalance
}
return 0
}
func (x *Bid) GetSidecarTicket() string {
if x != nil {
return x.SidecarTicket
}
return ""
}
func (x *Bid) GetUnannouncedChannel() bool {
if x != nil {
return x.UnannouncedChannel
}
return false
}
func (x *Bid) GetZeroConfChannel() bool {
if x != nil {
return x.ZeroConfChannel
}
return false
}
type Ask struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The common fields shared between both ask and bid order types.
Details *Order `protobuf:"bytes,1,opt,name=details,proto3" json:"details,omitempty"`
// The number of blocks the liquidity provider is willing to provide the
// channel funds for.
LeaseDurationBlocks uint32 `protobuf:"varint,2,opt,name=lease_duration_blocks,json=leaseDurationBlocks,proto3" json:"lease_duration_blocks,omitempty"`
// The version of the order format that is used. Will be increased once new
// features are added.
Version uint32 `protobuf:"varint,3,opt,name=version,proto3" json:"version,omitempty"`
// The constraints for selling the liquidity based on channel discoverability.
AnnouncementConstraints auctioneerrpc.ChannelAnnouncementConstraints `protobuf:"varint,4,opt,name=announcement_constraints,json=announcementConstraints,proto3,enum=poolrpc.ChannelAnnouncementConstraints" json:"announcement_constraints,omitempty"`
// The constraints for selling the liquidity based on the number of
// blocks before considering the channel confirmed.
ConfirmationConstraints auctioneerrpc.ChannelConfirmationConstraints `protobuf:"varint,5,opt,name=confirmation_constraints,json=confirmationConstraints,proto3,enum=poolrpc.ChannelConfirmationConstraints" json:"confirmation_constraints,omitempty"`
}
func (x *Ask) Reset() {
*x = Ask{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[27]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Ask) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Ask) ProtoMessage() {}
func (x *Ask) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 Ask.ProtoReflect.Descriptor instead.
func (*Ask) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{27}
}
func (x *Ask) GetDetails() *Order {
if x != nil {
return x.Details
}
return nil
}
func (x *Ask) GetLeaseDurationBlocks() uint32 {
if x != nil {
return x.LeaseDurationBlocks
}
return 0
}
func (x *Ask) GetVersion() uint32 {
if x != nil {
return x.Version
}
return 0
}
func (x *Ask) GetAnnouncementConstraints() auctioneerrpc.ChannelAnnouncementConstraints {
if x != nil {
return x.AnnouncementConstraints
}
return auctioneerrpc.ChannelAnnouncementConstraints(0)
}
func (x *Ask) GetConfirmationConstraints() auctioneerrpc.ChannelConfirmationConstraints {
if x != nil {
return x.ConfirmationConstraints
}
return auctioneerrpc.ChannelConfirmationConstraints(0)
}
type QuoteOrderRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Order amount in satoshis.
Amt uint64 `protobuf:"varint,1,opt,name=amt,proto3" json:"amt,omitempty"`
// Fixed order rate in parts per billion.
RateFixed uint32 `protobuf:"varint,2,opt,name=rate_fixed,json=rateFixed,proto3" json:"rate_fixed,omitempty"`
// Required number of blocks that a channel opened as a result of this bid
// should be kept open.
LeaseDurationBlocks uint32 `protobuf:"varint,3,opt,name=lease_duration_blocks,json=leaseDurationBlocks,proto3" json:"lease_duration_blocks,omitempty"`
// Maximum fee rate the trader is willing to pay for the batch transaction,
// expressed in satoshis per 1000 weight units (sat/KW).
MaxBatchFeeRateSatPerKw uint64 `protobuf:"varint,4,opt,name=max_batch_fee_rate_sat_per_kw,json=maxBatchFeeRateSatPerKw,proto3" json:"max_batch_fee_rate_sat_per_kw,omitempty"`
// The minimum number of order units that must be matched per order pair.
MinUnitsMatch uint32 `protobuf:"varint,5,opt,name=min_units_match,json=minUnitsMatch,proto3" json:"min_units_match,omitempty"`
}
func (x *QuoteOrderRequest) Reset() {
*x = QuoteOrderRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[28]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *QuoteOrderRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*QuoteOrderRequest) ProtoMessage() {}
func (x *QuoteOrderRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 QuoteOrderRequest.ProtoReflect.Descriptor instead.
func (*QuoteOrderRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{28}
}
func (x *QuoteOrderRequest) GetAmt() uint64 {
if x != nil {
return x.Amt
}
return 0
}
func (x *QuoteOrderRequest) GetRateFixed() uint32 {
if x != nil {
return x.RateFixed
}
return 0
}
func (x *QuoteOrderRequest) GetLeaseDurationBlocks() uint32 {
if x != nil {
return x.LeaseDurationBlocks
}
return 0
}
func (x *QuoteOrderRequest) GetMaxBatchFeeRateSatPerKw() uint64 {
if x != nil {
return x.MaxBatchFeeRateSatPerKw
}
return 0
}
func (x *QuoteOrderRequest) GetMinUnitsMatch() uint32 {
if x != nil {
return x.MinUnitsMatch
}
return 0
}
type QuoteOrderResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The total order premium in satoshis for filling the entire order. This
// represents the interest amount paid to the maker by the taker excluding any
// execution or chain fees.
TotalPremiumSat uint64 `protobuf:"varint,1,opt,name=total_premium_sat,json=totalPremiumSat,proto3" json:"total_premium_sat,omitempty"`
// The fixed order rate expressed as a fraction instead of parts per billion.
RatePerBlock float64 `protobuf:"fixed64,2,opt,name=rate_per_block,json=ratePerBlock,proto3" json:"rate_per_block,omitempty"`
// The fixed order rate expressed as a percentage instead of parts per billion.
RatePercent float64 `protobuf:"fixed64,3,opt,name=rate_percent,json=ratePercent,proto3" json:"rate_percent,omitempty"`
// The total execution fee in satoshis that needs to be paid to the auctioneer
// for executing the entire order.
TotalExecutionFeeSat uint64 `protobuf:"varint,4,opt,name=total_execution_fee_sat,json=totalExecutionFeeSat,proto3" json:"total_execution_fee_sat,omitempty"`
// The worst case chain fees that need to be paid if fee rates spike up to the
// max_batch_fee_rate_sat_per_kw value specified in the request. This value is
// highly dependent on the min_units_match parameter as well since the
// calculation assumes chain fees for the chain footprint of opening
// amt/min_units_match channels (hence worst case calculation).
WorstCaseChainFeeSat uint64 `protobuf:"varint,5,opt,name=worst_case_chain_fee_sat,json=worstCaseChainFeeSat,proto3" json:"worst_case_chain_fee_sat,omitempty"`
}
func (x *QuoteOrderResponse) Reset() {
*x = QuoteOrderResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[29]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *QuoteOrderResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*QuoteOrderResponse) ProtoMessage() {}
func (x *QuoteOrderResponse) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 QuoteOrderResponse.ProtoReflect.Descriptor instead.
func (*QuoteOrderResponse) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{29}
}
func (x *QuoteOrderResponse) GetTotalPremiumSat() uint64 {
if x != nil {
return x.TotalPremiumSat
}
return 0
}
func (x *QuoteOrderResponse) GetRatePerBlock() float64 {
if x != nil {
return x.RatePerBlock
}
return 0
}
func (x *QuoteOrderResponse) GetRatePercent() float64 {
if x != nil {
return x.RatePercent
}
return 0
}
func (x *QuoteOrderResponse) GetTotalExecutionFeeSat() uint64 {
if x != nil {
return x.TotalExecutionFeeSat
}
return 0
}
func (x *QuoteOrderResponse) GetWorstCaseChainFeeSat() uint64 {
if x != nil {
return x.WorstCaseChainFeeSat
}
return 0
}
type OrderEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The unix timestamp in nanoseconds the event was emitted at. This is the
// primary key of the event and is unique across the database.
TimestampNs int64 `protobuf:"varint,1,opt,name=timestamp_ns,json=timestampNs,proto3" json:"timestamp_ns,omitempty"`
// The human readable representation of the event.
EventStr string `protobuf:"bytes,2,opt,name=event_str,json=eventStr,proto3" json:"event_str,omitempty"`
// Types that are assignable to Event:
//
// *OrderEvent_StateChange
// *OrderEvent_Matched
Event isOrderEvent_Event `protobuf_oneof:"event"`
}
func (x *OrderEvent) Reset() {
*x = OrderEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[30]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *OrderEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*OrderEvent) ProtoMessage() {}
func (x *OrderEvent) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 OrderEvent.ProtoReflect.Descriptor instead.
func (*OrderEvent) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{30}
}
func (x *OrderEvent) GetTimestampNs() int64 {
if x != nil {
return x.TimestampNs
}
return 0
}
func (x *OrderEvent) GetEventStr() string {
if x != nil {
return x.EventStr
}
return ""
}
func (m *OrderEvent) GetEvent() isOrderEvent_Event {
if m != nil {
return m.Event
}
return nil
}
func (x *OrderEvent) GetStateChange() *UpdatedEvent {
if x, ok := x.GetEvent().(*OrderEvent_StateChange); ok {
return x.StateChange
}
return nil
}
func (x *OrderEvent) GetMatched() *MatchEvent {
if x, ok := x.GetEvent().(*OrderEvent_Matched); ok {
return x.Matched
}
return nil
}
type isOrderEvent_Event interface {
isOrderEvent_Event()
}
type OrderEvent_StateChange struct {
// The order was updated in the database.
StateChange *UpdatedEvent `protobuf:"bytes,3,opt,name=state_change,json=stateChange,proto3,oneof"`
}
type OrderEvent_Matched struct {
// The order was involved in a match making attempt.
Matched *MatchEvent `protobuf:"bytes,4,opt,name=matched,proto3,oneof"`
}
func (*OrderEvent_StateChange) isOrderEvent_Event() {}
func (*OrderEvent_Matched) isOrderEvent_Event() {}
type UpdatedEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The state of the order previous to the change. This is what the state
// changed from.
PreviousState auctioneerrpc.OrderState `protobuf:"varint,1,opt,name=previous_state,json=previousState,proto3,enum=poolrpc.OrderState" json:"previous_state,omitempty"`
// The new state of the order after the change. This is what the state changed
// to.
NewState auctioneerrpc.OrderState `protobuf:"varint,2,opt,name=new_state,json=newState,proto3,enum=poolrpc.OrderState" json:"new_state,omitempty"`
// The units that were filled at the time of the event.
UnitsFilled uint32 `protobuf:"varint,3,opt,name=units_filled,json=unitsFilled,proto3" json:"units_filled,omitempty"`
}
func (x *UpdatedEvent) Reset() {
*x = UpdatedEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[31]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdatedEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdatedEvent) ProtoMessage() {}
func (x *UpdatedEvent) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 UpdatedEvent.ProtoReflect.Descriptor instead.
func (*UpdatedEvent) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{31}
}
func (x *UpdatedEvent) GetPreviousState() auctioneerrpc.OrderState {
if x != nil {
return x.PreviousState
}
return auctioneerrpc.OrderState(0)
}
func (x *UpdatedEvent) GetNewState() auctioneerrpc.OrderState {
if x != nil {
return x.NewState
}
return auctioneerrpc.OrderState(0)
}
func (x *UpdatedEvent) GetUnitsFilled() uint32 {
if x != nil {
return x.UnitsFilled
}
return 0
}
type MatchEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The state of the match making process the order went through.
MatchState MatchState `protobuf:"varint,1,opt,name=match_state,json=matchState,proto3,enum=poolrpc.MatchState" json:"match_state,omitempty"`
// The number of units that would be (or were) filled with this match.
UnitsFilled uint32 `protobuf:"varint,2,opt,name=units_filled,json=unitsFilled,proto3" json:"units_filled,omitempty"`
// The nonce of the order we were matched to.
MatchedOrder []byte `protobuf:"bytes,3,opt,name=matched_order,json=matchedOrder,proto3" json:"matched_order,omitempty"`
// The reason why the trader daemon rejected the order. Is only set if
// match_state is set to REJECTED.
RejectReason MatchRejectReason `protobuf:"varint,4,opt,name=reject_reason,json=rejectReason,proto3,enum=poolrpc.MatchRejectReason" json:"reject_reason,omitempty"`
}
func (x *MatchEvent) Reset() {
*x = MatchEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[32]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *MatchEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*MatchEvent) ProtoMessage() {}
func (x *MatchEvent) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 MatchEvent.ProtoReflect.Descriptor instead.
func (*MatchEvent) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{32}
}
func (x *MatchEvent) GetMatchState() MatchState {
if x != nil {
return x.MatchState
}
return MatchState_PREPARE
}
func (x *MatchEvent) GetUnitsFilled() uint32 {
if x != nil {
return x.UnitsFilled
}
return 0
}
func (x *MatchEvent) GetMatchedOrder() []byte {
if x != nil {
return x.MatchedOrder
}
return nil
}
func (x *MatchEvent) GetRejectReason() MatchRejectReason {
if x != nil {
return x.RejectReason
}
return MatchRejectReason_NONE
}
type RecoverAccountsRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Recover the latest account states without interacting with the
// Lightning Labs server.
FullClient bool `protobuf:"varint,1,opt,name=full_client,json=fullClient,proto3" json:"full_client,omitempty"`
// Number of accounts that we are trying to recover. Used during the
// full_client recovery process.
AccountTarget uint32 `protobuf:"varint,2,opt,name=account_target,json=accountTarget,proto3" json:"account_target,omitempty"`
// Auctioneer's public key. Used during the full_client recovery process.
// This field should be left empty for testnet/mainnet, its value is already
// hardcoded in our codebase.
AuctioneerKey string `protobuf:"bytes,3,opt,name=auctioneer_key,json=auctioneerKey,proto3" json:"auctioneer_key,omitempty"`
// Initial block height. We won't try to look for any account with an expiry
// height smaller than this value. Used during the full_client recovery
// process.
HeightHint uint32 `protobuf:"varint,4,opt,name=height_hint,json=heightHint,proto3" json:"height_hint,omitempty"`
// bitcoind/btcd instance address. Used during the full_client recovery
// process.
BitcoinHost string `protobuf:"bytes,5,opt,name=bitcoin_host,json=bitcoinHost,proto3" json:"bitcoin_host,omitempty"`
// bitcoind/btcd user name. Used during the full_client recovery
// process.
BitcoinUser string `protobuf:"bytes,6,opt,name=bitcoin_user,json=bitcoinUser,proto3" json:"bitcoin_user,omitempty"`
// bitcoind/btcd password. Used during the full_client recovery
// process.
BitcoinPassword string `protobuf:"bytes,7,opt,name=bitcoin_password,json=bitcoinPassword,proto3" json:"bitcoin_password,omitempty"`
// Use HTTP POST mode? bitcoind only supports this mode. Used during the
// full_client recovery process.
BitcoinHttppostmode bool `protobuf:"varint,8,opt,name=bitcoin_httppostmode,json=bitcoinHttppostmode,proto3" json:"bitcoin_httppostmode,omitempty"`
// Use TLS to connect? bitcoind only supports non-TLS connections. Used
// during the full_client recovery process.
BitcoinUsetls bool `protobuf:"varint,9,opt,name=bitcoin_usetls,json=bitcoinUsetls,proto3" json:"bitcoin_usetls,omitempty"`
// Path to btcd's TLS certificate, if TLS is enabled. Used during the
// full_client recovery process.
BitcoinTlspath string `protobuf:"bytes,10,opt,name=bitcoin_tlspath,json=bitcoinTlspath,proto3" json:"bitcoin_tlspath,omitempty"`
}
func (x *RecoverAccountsRequest) Reset() {
*x = RecoverAccountsRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[33]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RecoverAccountsRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RecoverAccountsRequest) ProtoMessage() {}
func (x *RecoverAccountsRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 RecoverAccountsRequest.ProtoReflect.Descriptor instead.
func (*RecoverAccountsRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{33}
}
func (x *RecoverAccountsRequest) GetFullClient() bool {
if x != nil {
return x.FullClient
}
return false
}
func (x *RecoverAccountsRequest) GetAccountTarget() uint32 {
if x != nil {
return x.AccountTarget
}
return 0
}
func (x *RecoverAccountsRequest) GetAuctioneerKey() string {
if x != nil {
return x.AuctioneerKey
}
return ""
}
func (x *RecoverAccountsRequest) GetHeightHint() uint32 {
if x != nil {
return x.HeightHint
}
return 0
}
func (x *RecoverAccountsRequest) GetBitcoinHost() string {
if x != nil {
return x.BitcoinHost
}
return ""
}
func (x *RecoverAccountsRequest) GetBitcoinUser() string {
if x != nil {
return x.BitcoinUser
}
return ""
}
func (x *RecoverAccountsRequest) GetBitcoinPassword() string {
if x != nil {
return x.BitcoinPassword
}
return ""
}
func (x *RecoverAccountsRequest) GetBitcoinHttppostmode() bool {
if x != nil {
return x.BitcoinHttppostmode
}
return false
}
func (x *RecoverAccountsRequest) GetBitcoinUsetls() bool {
if x != nil {
return x.BitcoinUsetls
}
return false
}
func (x *RecoverAccountsRequest) GetBitcoinTlspath() string {
if x != nil {
return x.BitcoinTlspath
}
return ""
}
type RecoverAccountsResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The number of accounts that were recovered.
NumRecoveredAccounts uint32 `protobuf:"varint,1,opt,name=num_recovered_accounts,json=numRecoveredAccounts,proto3" json:"num_recovered_accounts,omitempty"`
}
func (x *RecoverAccountsResponse) Reset() {
*x = RecoverAccountsResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[34]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RecoverAccountsResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RecoverAccountsResponse) ProtoMessage() {}
func (x *RecoverAccountsResponse) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 RecoverAccountsResponse.ProtoReflect.Descriptor instead.
func (*RecoverAccountsResponse) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{34}
}
func (x *RecoverAccountsResponse) GetNumRecoveredAccounts() uint32 {
if x != nil {
return x.NumRecoveredAccounts
}
return 0
}
type AccountModificationFeesRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *AccountModificationFeesRequest) Reset() {
*x = AccountModificationFeesRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[35]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AccountModificationFeesRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AccountModificationFeesRequest) ProtoMessage() {}
func (x *AccountModificationFeesRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 AccountModificationFeesRequest.ProtoReflect.Descriptor instead.
func (*AccountModificationFeesRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{35}
}
type AccountModificationFee struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Modification action type.
Action string `protobuf:"bytes,1,opt,name=action,proto3" json:"action,omitempty"`
// Transaction ID.
Txid string `protobuf:"bytes,2,opt,name=txid,proto3" json:"txid,omitempty"`
// Action transaction block height.
BlockHeight int32 `protobuf:"varint,3,opt,name=block_height,json=blockHeight,proto3" json:"block_height,omitempty"`
// Action transaction timestamp.
Timestamp int64 `protobuf:"varint,4,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
// Action transaction output amount.
OutputAmount int64 `protobuf:"varint,5,opt,name=output_amount,json=outputAmount,proto3" json:"output_amount,omitempty"`
// Action transaction fee.
//
// Types that are assignable to Fee:
//
// *AccountModificationFee_FeeNull
// *AccountModificationFee_FeeValue
Fee isAccountModificationFee_Fee `protobuf_oneof:"fee"`
}
func (x *AccountModificationFee) Reset() {
*x = AccountModificationFee{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[36]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AccountModificationFee) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AccountModificationFee) ProtoMessage() {}
func (x *AccountModificationFee) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 AccountModificationFee.ProtoReflect.Descriptor instead.
func (*AccountModificationFee) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{36}
}
func (x *AccountModificationFee) GetAction() string {
if x != nil {
return x.Action
}
return ""
}
func (x *AccountModificationFee) GetTxid() string {
if x != nil {
return x.Txid
}
return ""
}
func (x *AccountModificationFee) GetBlockHeight() int32 {
if x != nil {
return x.BlockHeight
}
return 0
}
func (x *AccountModificationFee) GetTimestamp() int64 {
if x != nil {
return x.Timestamp
}
return 0
}
func (x *AccountModificationFee) GetOutputAmount() int64 {
if x != nil {
return x.OutputAmount
}
return 0
}
func (m *AccountModificationFee) GetFee() isAccountModificationFee_Fee {
if m != nil {
return m.Fee
}
return nil
}
func (x *AccountModificationFee) GetFeeNull() bool {
if x, ok := x.GetFee().(*AccountModificationFee_FeeNull); ok {
return x.FeeNull
}
return false
}
func (x *AccountModificationFee) GetFeeValue() int64 {
if x, ok := x.GetFee().(*AccountModificationFee_FeeValue); ok {
return x.FeeValue
}
return 0
}
type isAccountModificationFee_Fee interface {
isAccountModificationFee_Fee()
}
type AccountModificationFee_FeeNull struct {
// A flag which is true if fee value has not been set, and is otherwise
// false.
FeeNull bool `protobuf:"varint,6,opt,name=fee_null,json=feeNull,proto3,oneof"`
}
type AccountModificationFee_FeeValue struct {
// Action transaction fee value.
FeeValue int64 `protobuf:"varint,7,opt,name=fee_value,json=feeValue,proto3,oneof"`
}
func (*AccountModificationFee_FeeNull) isAccountModificationFee_Fee() {}
func (*AccountModificationFee_FeeValue) isAccountModificationFee_Fee() {}
type ListOfAccountModificationFees struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
ModificationFees []*AccountModificationFee `protobuf:"bytes,1,rep,name=modification_fees,json=modificationFees,proto3" json:"modification_fees,omitempty"`
}
func (x *ListOfAccountModificationFees) Reset() {
*x = ListOfAccountModificationFees{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[37]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListOfAccountModificationFees) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListOfAccountModificationFees) ProtoMessage() {}
func (x *ListOfAccountModificationFees) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 ListOfAccountModificationFees.ProtoReflect.Descriptor instead.
func (*ListOfAccountModificationFees) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{37}
}
func (x *ListOfAccountModificationFees) GetModificationFees() []*AccountModificationFee {
if x != nil {
return x.ModificationFees
}
return nil
}
type AccountModificationFeesResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// A map from account key to an ordered list of account modification fees.
Accounts map[string]*ListOfAccountModificationFees `protobuf:"bytes,1,rep,name=accounts,proto3" json:"accounts,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
}
func (x *AccountModificationFeesResponse) Reset() {
*x = AccountModificationFeesResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[38]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AccountModificationFeesResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AccountModificationFeesResponse) ProtoMessage() {}
func (x *AccountModificationFeesResponse) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 AccountModificationFeesResponse.ProtoReflect.Descriptor instead.
func (*AccountModificationFeesResponse) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{38}
}
func (x *AccountModificationFeesResponse) GetAccounts() map[string]*ListOfAccountModificationFees {
if x != nil {
return x.Accounts
}
return nil
}
type AuctionFeeRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *AuctionFeeRequest) Reset() {
*x = AuctionFeeRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[39]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AuctionFeeRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AuctionFeeRequest) ProtoMessage() {}
func (x *AuctionFeeRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 AuctionFeeRequest.ProtoReflect.Descriptor instead.
func (*AuctionFeeRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{39}
}
type AuctionFeeResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The execution fee charged per matched order.
ExecutionFee *auctioneerrpc.ExecutionFee `protobuf:"bytes,1,opt,name=execution_fee,json=executionFee,proto3" json:"execution_fee,omitempty"`
}
func (x *AuctionFeeResponse) Reset() {
*x = AuctionFeeResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[40]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AuctionFeeResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AuctionFeeResponse) ProtoMessage() {}
func (x *AuctionFeeResponse) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 AuctionFeeResponse.ProtoReflect.Descriptor instead.
func (*AuctionFeeResponse) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{40}
}
func (x *AuctionFeeResponse) GetExecutionFee() *auctioneerrpc.ExecutionFee {
if x != nil {
return x.ExecutionFee
}
return nil
}
type Lease struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The outpoint of the channel created.
ChannelPoint *auctioneerrpc.OutPoint `protobuf:"bytes,1,opt,name=channel_point,json=channelPoint,proto3" json:"channel_point,omitempty"`
// The amount, in satoshis, of the channel created.
ChannelAmtSat uint64 `protobuf:"varint,2,opt,name=channel_amt_sat,json=channelAmtSat,proto3" json:"channel_amt_sat,omitempty"`
// The intended duration, in blocks, of the channel created.
ChannelDurationBlocks uint32 `protobuf:"varint,3,opt,name=channel_duration_blocks,json=channelDurationBlocks,proto3" json:"channel_duration_blocks,omitempty"`
// The absolute height that this channel lease expires.
ChannelLeaseExpiry uint32 `protobuf:"varint,4,opt,name=channel_lease_expiry,json=channelLeaseExpiry,proto3" json:"channel_lease_expiry,omitempty"`
// The premium, in satoshis, either paid or received for the offered liquidity.
PremiumSat uint64 `protobuf:"varint,5,opt,name=premium_sat,json=premiumSat,proto3" json:"premium_sat,omitempty"`
// The execution fee, in satoshis, charged by the auctioneer for the channel
// created.
ExecutionFeeSat uint64 `protobuf:"varint,6,opt,name=execution_fee_sat,json=executionFeeSat,proto3" json:"execution_fee_sat,omitempty"`
// The fee, in satoshis, charged by the auctioneer for the batch execution
// transaction that created this lease.
ChainFeeSat uint64 `protobuf:"varint,7,opt,name=chain_fee_sat,json=chainFeeSat,proto3" json:"chain_fee_sat,omitempty"`
// The actual fixed rate expressed in parts per billionth this lease was
// bought/sold at.
ClearingRatePrice uint64 `protobuf:"varint,8,opt,name=clearing_rate_price,json=clearingRatePrice,proto3" json:"clearing_rate_price,omitempty"`
// The actual fixed rate of the bid/ask, this should always be 'better' than
// the clearing_rate_price.
OrderFixedRate uint64 `protobuf:"varint,9,opt,name=order_fixed_rate,json=orderFixedRate,proto3" json:"order_fixed_rate,omitempty"`
// The order executed that resulted in the channel created.
OrderNonce []byte `protobuf:"bytes,10,opt,name=order_nonce,json=orderNonce,proto3" json:"order_nonce,omitempty"`
// The unique identifier for the order that was matched with that resulted
// in the channel created.
MatchedOrderNonce []byte `protobuf:"bytes,16,opt,name=matched_order_nonce,json=matchedOrderNonce,proto3" json:"matched_order_nonce,omitempty"`
// Whether this channel was purchased from another trader or not.
Purchased bool `protobuf:"varint,11,opt,name=purchased,proto3" json:"purchased,omitempty"`
// The pubkey of the node that this channel was bought/sold from.
ChannelRemoteNodeKey []byte `protobuf:"bytes,12,opt,name=channel_remote_node_key,json=channelRemoteNodeKey,proto3" json:"channel_remote_node_key,omitempty"`
// The tier of the node that this channel was bought/sold from.
ChannelNodeTier auctioneerrpc.NodeTier `protobuf:"varint,13,opt,name=channel_node_tier,json=channelNodeTier,proto3,enum=poolrpc.NodeTier" json:"channel_node_tier,omitempty"`
// The self channel balance that was pushed to the recipient.
SelfChanBalance uint64 `protobuf:"varint,14,opt,name=self_chan_balance,json=selfChanBalance,proto3" json:"self_chan_balance,omitempty"`
// Whether the channel was leased as a sidecar channel (bid orders only).
SidecarChannel bool `protobuf:"varint,15,opt,name=sidecar_channel,json=sidecarChannel,proto3" json:"sidecar_channel,omitempty"`
}
func (x *Lease) Reset() {
*x = Lease{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[41]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Lease) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Lease) ProtoMessage() {}
func (x *Lease) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 Lease.ProtoReflect.Descriptor instead.
func (*Lease) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{41}
}
func (x *Lease) GetChannelPoint() *auctioneerrpc.OutPoint {
if x != nil {
return x.ChannelPoint
}
return nil
}
func (x *Lease) GetChannelAmtSat() uint64 {
if x != nil {
return x.ChannelAmtSat
}
return 0
}
func (x *Lease) GetChannelDurationBlocks() uint32 {
if x != nil {
return x.ChannelDurationBlocks
}
return 0
}
func (x *Lease) GetChannelLeaseExpiry() uint32 {
if x != nil {
return x.ChannelLeaseExpiry
}
return 0
}
func (x *Lease) GetPremiumSat() uint64 {
if x != nil {
return x.PremiumSat
}
return 0
}
func (x *Lease) GetExecutionFeeSat() uint64 {
if x != nil {
return x.ExecutionFeeSat
}
return 0
}
func (x *Lease) GetChainFeeSat() uint64 {
if x != nil {
return x.ChainFeeSat
}
return 0
}
func (x *Lease) GetClearingRatePrice() uint64 {
if x != nil {
return x.ClearingRatePrice
}
return 0
}
func (x *Lease) GetOrderFixedRate() uint64 {
if x != nil {
return x.OrderFixedRate
}
return 0
}
func (x *Lease) GetOrderNonce() []byte {
if x != nil {
return x.OrderNonce
}
return nil
}
func (x *Lease) GetMatchedOrderNonce() []byte {
if x != nil {
return x.MatchedOrderNonce
}
return nil
}
func (x *Lease) GetPurchased() bool {
if x != nil {
return x.Purchased
}
return false
}
func (x *Lease) GetChannelRemoteNodeKey() []byte {
if x != nil {
return x.ChannelRemoteNodeKey
}
return nil
}
func (x *Lease) GetChannelNodeTier() auctioneerrpc.NodeTier {
if x != nil {
return x.ChannelNodeTier
}
return auctioneerrpc.NodeTier(0)
}
func (x *Lease) GetSelfChanBalance() uint64 {
if x != nil {
return x.SelfChanBalance
}
return 0
}
func (x *Lease) GetSidecarChannel() bool {
if x != nil {
return x.SidecarChannel
}
return false
}
type LeasesRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// An optional list of batches to retrieve the leases of. If empty, leases
// throughout all batches are returned.
BatchIds [][]byte `protobuf:"bytes,1,rep,name=batch_ids,json=batchIds,proto3" json:"batch_ids,omitempty"`
// An optional list of accounts to retrieve the leases of. If empty, leases
// for all accounts are returned.
Accounts [][]byte `protobuf:"bytes,2,rep,name=accounts,proto3" json:"accounts,omitempty"`
}
func (x *LeasesRequest) Reset() {
*x = LeasesRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[42]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LeasesRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LeasesRequest) ProtoMessage() {}
func (x *LeasesRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 LeasesRequest.ProtoReflect.Descriptor instead.
func (*LeasesRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{42}
}
func (x *LeasesRequest) GetBatchIds() [][]byte {
if x != nil {
return x.BatchIds
}
return nil
}
func (x *LeasesRequest) GetAccounts() [][]byte {
if x != nil {
return x.Accounts
}
return nil
}
type LeasesResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The relevant list of leases purchased or sold within the auction.
Leases []*Lease `protobuf:"bytes,1,rep,name=leases,proto3" json:"leases,omitempty"`
// The total amount of satoshis earned from the leases returned.
TotalAmtEarnedSat uint64 `protobuf:"varint,2,opt,name=total_amt_earned_sat,json=totalAmtEarnedSat,proto3" json:"total_amt_earned_sat,omitempty"`
// The total amount of satoshis paid for the leases returned.
TotalAmtPaidSat uint64 `protobuf:"varint,3,opt,name=total_amt_paid_sat,json=totalAmtPaidSat,proto3" json:"total_amt_paid_sat,omitempty"`
}
func (x *LeasesResponse) Reset() {
*x = LeasesResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[43]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LeasesResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LeasesResponse) ProtoMessage() {}
func (x *LeasesResponse) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 LeasesResponse.ProtoReflect.Descriptor instead.
func (*LeasesResponse) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{43}
}
func (x *LeasesResponse) GetLeases() []*Lease {
if x != nil {
return x.Leases
}
return nil
}
func (x *LeasesResponse) GetTotalAmtEarnedSat() uint64 {
if x != nil {
return x.TotalAmtEarnedSat
}
return 0
}
func (x *LeasesResponse) GetTotalAmtPaidSat() uint64 {
if x != nil {
return x.TotalAmtPaidSat
}
return 0
}
type TokensRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *TokensRequest) Reset() {
*x = TokensRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[44]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TokensRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TokensRequest) ProtoMessage() {}
func (x *TokensRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 TokensRequest.ProtoReflect.Descriptor instead.
func (*TokensRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{44}
}
type TokensResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// *
// List of all tokens the daemon knows of, including old/expired tokens.
Tokens []*LsatToken `protobuf:"bytes,1,rep,name=tokens,proto3" json:"tokens,omitempty"`
}
func (x *TokensResponse) Reset() {
*x = TokensResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[45]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TokensResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TokensResponse) ProtoMessage() {}
func (x *TokensResponse) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 TokensResponse.ProtoReflect.Descriptor instead.
func (*TokensResponse) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{45}
}
func (x *TokensResponse) GetTokens() []*LsatToken {
if x != nil {
return x.Tokens
}
return nil
}
type LsatToken struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// *
// The base macaroon that was baked by the auth server.
BaseMacaroon []byte `protobuf:"bytes,1,opt,name=base_macaroon,json=baseMacaroon,proto3" json:"base_macaroon,omitempty"`
// *
// The payment hash of the payment that was paid to obtain the token.
PaymentHash []byte `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
// *
// The preimage of the payment hash, knowledge of this is proof that the
// payment has been paid. If the preimage is set to all zeros, this means the
// payment is still pending and the token is not yet fully valid.
PaymentPreimage []byte `protobuf:"bytes,3,opt,name=payment_preimage,json=paymentPreimage,proto3" json:"payment_preimage,omitempty"`
// *
// The amount of millisatoshis that was paid to get the token.
AmountPaidMsat int64 `protobuf:"varint,4,opt,name=amount_paid_msat,json=amountPaidMsat,proto3" json:"amount_paid_msat,omitempty"`
// *
// The amount of millisatoshis paid in routing fee to pay for the token.
RoutingFeePaidMsat int64 `protobuf:"varint,5,opt,name=routing_fee_paid_msat,json=routingFeePaidMsat,proto3" json:"routing_fee_paid_msat,omitempty"`
// *
// The creation time of the token as UNIX timestamp in seconds.
TimeCreated int64 `protobuf:"varint,6,opt,name=time_created,json=timeCreated,proto3" json:"time_created,omitempty"`
// *
// Indicates whether the token is expired or still valid.
Expired bool `protobuf:"varint,7,opt,name=expired,proto3" json:"expired,omitempty"`
// *
// Identifying attribute of this token in the store. Currently represents the
// file name of the token where it's stored on the file system.
StorageName string `protobuf:"bytes,8,opt,name=storage_name,json=storageName,proto3" json:"storage_name,omitempty"`
}
func (x *LsatToken) Reset() {
*x = LsatToken{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[46]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LsatToken) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LsatToken) ProtoMessage() {}
func (x *LsatToken) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 LsatToken.ProtoReflect.Descriptor instead.
func (*LsatToken) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{46}
}
func (x *LsatToken) GetBaseMacaroon() []byte {
if x != nil {
return x.BaseMacaroon
}
return nil
}
func (x *LsatToken) GetPaymentHash() []byte {
if x != nil {
return x.PaymentHash
}
return nil
}
func (x *LsatToken) GetPaymentPreimage() []byte {
if x != nil {
return x.PaymentPreimage
}
return nil
}
func (x *LsatToken) GetAmountPaidMsat() int64 {
if x != nil {
return x.AmountPaidMsat
}
return 0
}
func (x *LsatToken) GetRoutingFeePaidMsat() int64 {
if x != nil {
return x.RoutingFeePaidMsat
}
return 0
}
func (x *LsatToken) GetTimeCreated() int64 {
if x != nil {
return x.TimeCreated
}
return 0
}
func (x *LsatToken) GetExpired() bool {
if x != nil {
return x.Expired
}
return false
}
func (x *LsatToken) GetStorageName() string {
if x != nil {
return x.StorageName
}
return ""
}
type LeaseDurationRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *LeaseDurationRequest) Reset() {
*x = LeaseDurationRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[47]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LeaseDurationRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LeaseDurationRequest) ProtoMessage() {}
func (x *LeaseDurationRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 LeaseDurationRequest.ProtoReflect.Descriptor instead.
func (*LeaseDurationRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{47}
}
type LeaseDurationResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Deprecated, use lease_duration_buckets.
//
// Deprecated: Marked as deprecated in trader.proto.
LeaseDurations map[uint32]bool `protobuf:"bytes,1,rep,name=lease_durations,json=leaseDurations,proto3" json:"lease_durations,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"`
// The set of lease durations the market is currently accepting and the state
// the duration buckets currently are in.
LeaseDurationBuckets map[uint32]auctioneerrpc.DurationBucketState `protobuf:"bytes,2,rep,name=lease_duration_buckets,json=leaseDurationBuckets,proto3" json:"lease_duration_buckets,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3,enum=poolrpc.DurationBucketState"`
}
func (x *LeaseDurationResponse) Reset() {
*x = LeaseDurationResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[48]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LeaseDurationResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LeaseDurationResponse) ProtoMessage() {}
func (x *LeaseDurationResponse) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 LeaseDurationResponse.ProtoReflect.Descriptor instead.
func (*LeaseDurationResponse) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{48}
}
// Deprecated: Marked as deprecated in trader.proto.
func (x *LeaseDurationResponse) GetLeaseDurations() map[uint32]bool {
if x != nil {
return x.LeaseDurations
}
return nil
}
func (x *LeaseDurationResponse) GetLeaseDurationBuckets() map[uint32]auctioneerrpc.DurationBucketState {
if x != nil {
return x.LeaseDurationBuckets
}
return nil
}
type NextBatchInfoRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *NextBatchInfoRequest) Reset() {
*x = NextBatchInfoRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[49]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *NextBatchInfoRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*NextBatchInfoRequest) ProtoMessage() {}
func (x *NextBatchInfoRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 NextBatchInfoRequest.ProtoReflect.Descriptor instead.
func (*NextBatchInfoRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{49}
}
type NextBatchInfoResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The confirmation target the auctioneer will use for fee estimation of the
// next batch.
ConfTarget uint32 `protobuf:"varint,5,opt,name=conf_target,json=confTarget,proto3" json:"conf_target,omitempty"`
// The fee rate, in satoshis per kiloweight, estimated by the auctioneer to use
// for the next batch.
FeeRateSatPerKw uint64 `protobuf:"varint,6,opt,name=fee_rate_sat_per_kw,json=feeRateSatPerKw,proto3" json:"fee_rate_sat_per_kw,omitempty"`
// The absolute unix timestamp in seconds at which the auctioneer will attempt
// to clear the next batch.
ClearTimestamp uint64 `protobuf:"varint,7,opt,name=clear_timestamp,json=clearTimestamp,proto3" json:"clear_timestamp,omitempty"`
// The value used by the auctioneer to determine if an account expiry height
// needs to be extended after participating in a batch and for how long.
AutoRenewExtensionBlocks uint32 `protobuf:"varint,8,opt,name=auto_renew_extension_blocks,json=autoRenewExtensionBlocks,proto3" json:"auto_renew_extension_blocks,omitempty"`
}
func (x *NextBatchInfoResponse) Reset() {
*x = NextBatchInfoResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[50]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *NextBatchInfoResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*NextBatchInfoResponse) ProtoMessage() {}
func (x *NextBatchInfoResponse) ProtoReflect() protoreflect.Message {
mi := &file_trader_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 NextBatchInfoResponse.ProtoReflect.Descriptor instead.
func (*NextBatchInfoResponse) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{50}
}
func (x *NextBatchInfoResponse) GetConfTarget() uint32 {
if x != nil {
return x.ConfTarget
}
return 0
}
func (x *NextBatchInfoResponse) GetFeeRateSatPerKw() uint64 {
if x != nil {
return x.FeeRateSatPerKw
}
return 0
}
func (x *NextBatchInfoResponse) GetClearTimestamp() uint64 {
if x != nil {
return x.ClearTimestamp
}
return 0
}
func (x *NextBatchInfoResponse) GetAutoRenewExtensionBlocks() uint32 {
if x != nil {
return x.AutoRenewExtensionBlocks
}
return 0
}
type NodeRatingRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The target node to obtain ratings information for.
NodePubkeys [][]byte `protobuf:"bytes,1,rep,name=node_pubkeys,json=nodePubkeys,proto3" json:"node_pubkeys,omitempty"`
}
func (x *NodeRatingRequest) Reset() {
*x = NodeRatingRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[51]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *NodeRatingRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*NodeRatingRequest) ProtoMessage() {}
func (x *NodeRatingRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_proto_msgTypes[51]
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 NodeRatingRequest.ProtoReflect.Descriptor instead.
func (*NodeRatingRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{51}
}
func (x *NodeRatingRequest) GetNodePubkeys() [][]byte {
if x != nil {
return x.NodePubkeys
}
return nil
}
type NodeRatingResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// A series of node ratings for each of the queried nodes.
NodeRatings []*auctioneerrpc.NodeRating `protobuf:"bytes,1,rep,name=node_ratings,json=nodeRatings,proto3" json:"node_ratings,omitempty"`
}
func (x *NodeRatingResponse) Reset() {
*x = NodeRatingResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[52]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *NodeRatingResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*NodeRatingResponse) ProtoMessage() {}
func (x *NodeRatingResponse) ProtoReflect() protoreflect.Message {
mi := &file_trader_proto_msgTypes[52]
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 NodeRatingResponse.ProtoReflect.Descriptor instead.
func (*NodeRatingResponse) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{52}
}
func (x *NodeRatingResponse) GetNodeRatings() []*auctioneerrpc.NodeRating {
if x != nil {
return x.NodeRatings
}
return nil
}
type GetInfoRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *GetInfoRequest) Reset() {
*x = GetInfoRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[53]
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_trader_proto_msgTypes[53]
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_trader_proto_rawDescGZIP(), []int{53}
}
type GetInfoResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The version of the Pool daemon that is running.
Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
// The total number of accounts in the local database.
AccountsTotal uint32 `protobuf:"varint,2,opt,name=accounts_total,json=accountsTotal,proto3" json:"accounts_total,omitempty"`
// The total number of accounts that are in an active, non-archived state,
// including expired accounts.
AccountsActive uint32 `protobuf:"varint,3,opt,name=accounts_active,json=accountsActive,proto3" json:"accounts_active,omitempty"`
// The total number of accounts that are active but have expired.
AccountsActiveExpired uint32 `protobuf:"varint,4,opt,name=accounts_active_expired,json=accountsActiveExpired,proto3" json:"accounts_active_expired,omitempty"`
// The total number of accounts that are in an archived/closed state.
AccountsArchived uint32 `protobuf:"varint,5,opt,name=accounts_archived,json=accountsArchived,proto3" json:"accounts_archived,omitempty"`
// The total number of orders in the local database.
OrdersTotal uint32 `protobuf:"varint,6,opt,name=orders_total,json=ordersTotal,proto3" json:"orders_total,omitempty"`
// The total number of active/pending orders that are still waiting for
// execution.
OrdersActive uint32 `protobuf:"varint,7,opt,name=orders_active,json=ordersActive,proto3" json:"orders_active,omitempty"`
// The total number of orders that have been archived.
OrdersArchived uint32 `protobuf:"varint,8,opt,name=orders_archived,json=ordersArchived,proto3" json:"orders_archived,omitempty"`
// The current block height as seen by the connected lnd node.
CurrentBlockHeight uint32 `protobuf:"varint,9,opt,name=current_block_height,json=currentBlockHeight,proto3" json:"current_block_height,omitempty"`
// The number of batches an account of this node was ever involved in.
BatchesInvolved uint32 `protobuf:"varint,10,opt,name=batches_involved,json=batchesInvolved,proto3" json:"batches_involved,omitempty"`
// Our lnd node's rating as judged by the auctioneer server.
NodeRating *auctioneerrpc.NodeRating `protobuf:"bytes,11,opt,name=node_rating,json=nodeRating,proto3" json:"node_rating,omitempty"`
// The number of available LSAT tokens.
LsatTokens uint32 `protobuf:"varint,12,opt,name=lsat_tokens,json=lsatTokens,proto3" json:"lsat_tokens,omitempty"`
// Indicates whether there is an active subscription connection to the
// auctioneer. This will never be true if there is no active account. If there
// are active accounts, this value represents the network connection status to
// the auctioneer server.
SubscribedToAuctioneer bool `protobuf:"varint,13,opt,name=subscribed_to_auctioneer,json=subscribedToAuctioneer,proto3" json:"subscribed_to_auctioneer,omitempty"`
// Indicates whether the global `--newnodesonly` command line flag or
// `newnodesonly=true` configuration parameter was set on the Pool trader
// daemon.
NewNodesOnly bool `protobuf:"varint,14,opt,name=new_nodes_only,json=newNodesOnly,proto3" json:"new_nodes_only,omitempty"`
// A map of all markets identified by their lease duration and the current
// set of statistics such as number of open orders and total units of open
// interest.
MarketInfo map[uint32]*auctioneerrpc.MarketInfo `protobuf:"bytes,15,rep,name=market_info,json=marketInfo,proto3" json:"market_info,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
}
func (x *GetInfoResponse) Reset() {
*x = GetInfoResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[54]
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_trader_proto_msgTypes[54]
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_trader_proto_rawDescGZIP(), []int{54}
}
func (x *GetInfoResponse) GetVersion() string {
if x != nil {
return x.Version
}
return ""
}
func (x *GetInfoResponse) GetAccountsTotal() uint32 {
if x != nil {
return x.AccountsTotal
}
return 0
}
func (x *GetInfoResponse) GetAccountsActive() uint32 {
if x != nil {
return x.AccountsActive
}
return 0
}
func (x *GetInfoResponse) GetAccountsActiveExpired() uint32 {
if x != nil {
return x.AccountsActiveExpired
}
return 0
}
func (x *GetInfoResponse) GetAccountsArchived() uint32 {
if x != nil {
return x.AccountsArchived
}
return 0
}
func (x *GetInfoResponse) GetOrdersTotal() uint32 {
if x != nil {
return x.OrdersTotal
}
return 0
}
func (x *GetInfoResponse) GetOrdersActive() uint32 {
if x != nil {
return x.OrdersActive
}
return 0
}
func (x *GetInfoResponse) GetOrdersArchived() uint32 {
if x != nil {
return x.OrdersArchived
}
return 0
}
func (x *GetInfoResponse) GetCurrentBlockHeight() uint32 {
if x != nil {
return x.CurrentBlockHeight
}
return 0
}
func (x *GetInfoResponse) GetBatchesInvolved() uint32 {
if x != nil {
return x.BatchesInvolved
}
return 0
}
func (x *GetInfoResponse) GetNodeRating() *auctioneerrpc.NodeRating {
if x != nil {
return x.NodeRating
}
return nil
}
func (x *GetInfoResponse) GetLsatTokens() uint32 {
if x != nil {
return x.LsatTokens
}
return 0
}
func (x *GetInfoResponse) GetSubscribedToAuctioneer() bool {
if x != nil {
return x.SubscribedToAuctioneer
}
return false
}
func (x *GetInfoResponse) GetNewNodesOnly() bool {
if x != nil {
return x.NewNodesOnly
}
return false
}
func (x *GetInfoResponse) GetMarketInfo() map[uint32]*auctioneerrpc.MarketInfo {
if x != nil {
return x.MarketInfo
}
return nil
}
type StopDaemonRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *StopDaemonRequest) Reset() {
*x = StopDaemonRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[55]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *StopDaemonRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StopDaemonRequest) ProtoMessage() {}
func (x *StopDaemonRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_proto_msgTypes[55]
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 StopDaemonRequest.ProtoReflect.Descriptor instead.
func (*StopDaemonRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{55}
}
type StopDaemonResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *StopDaemonResponse) Reset() {
*x = StopDaemonResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[56]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *StopDaemonResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StopDaemonResponse) ProtoMessage() {}
func (x *StopDaemonResponse) ProtoReflect() protoreflect.Message {
mi := &file_trader_proto_msgTypes[56]
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 StopDaemonResponse.ProtoReflect.Descriptor instead.
func (*StopDaemonResponse) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{56}
}
type OfferSidecarRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// If false, then only the trader_key, unit, self_chan_balance, and
// lease_duration_blocks need to be set in the bid below. Otherwise, the
// fields as they're set when submitting a bid need to be filled in.
AutoNegotiate bool `protobuf:"varint,1,opt,name=auto_negotiate,json=autoNegotiate,proto3" json:"auto_negotiate,omitempty"`
// The bid template that will be used to populate the initial sidecar ticket
// as well as auto negotiate the remainig steps of the sidecar channel if
// needed.
Bid *Bid `protobuf:"bytes,2,opt,name=bid,proto3" json:"bid,omitempty"`
}
func (x *OfferSidecarRequest) Reset() {
*x = OfferSidecarRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[57]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *OfferSidecarRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*OfferSidecarRequest) ProtoMessage() {}
func (x *OfferSidecarRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_proto_msgTypes[57]
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 OfferSidecarRequest.ProtoReflect.Descriptor instead.
func (*OfferSidecarRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{57}
}
func (x *OfferSidecarRequest) GetAutoNegotiate() bool {
if x != nil {
return x.AutoNegotiate
}
return false
}
func (x *OfferSidecarRequest) GetBid() *Bid {
if x != nil {
return x.Bid
}
return nil
}
type SidecarTicket struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The complete sidecar ticket in its string encoded form which is base58
// encoded, has a human readable prefix ('sidecar...') and a checksum built in.
// The string encoded version will only be used on the trader side of the API.
// All requests to the auctioneer expect the ticket to be in its raw, tlv
// encoded byte form.
Ticket string `protobuf:"bytes,1,opt,name=ticket,proto3" json:"ticket,omitempty"`
}
func (x *SidecarTicket) Reset() {
*x = SidecarTicket{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[58]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SidecarTicket) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SidecarTicket) ProtoMessage() {}
func (x *SidecarTicket) ProtoReflect() protoreflect.Message {
mi := &file_trader_proto_msgTypes[58]
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 SidecarTicket.ProtoReflect.Descriptor instead.
func (*SidecarTicket) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{58}
}
func (x *SidecarTicket) GetTicket() string {
if x != nil {
return x.Ticket
}
return ""
}
type DecodedSidecarTicket struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The unique, pseudorandom identifier of the ticket.
Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
// The version of the ticket encoding format.
Version uint32 `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty"`
// The state of the ticket.
State string `protobuf:"bytes,3,opt,name=state,proto3" json:"state,omitempty"`
// The offered channel capacity in satoshis.
OfferCapacity uint64 `protobuf:"varint,4,opt,name=offer_capacity,json=offerCapacity,proto3" json:"offer_capacity,omitempty"`
// The offered push amount in satoshis.
OfferPushAmount uint64 `protobuf:"varint,5,opt,name=offer_push_amount,json=offerPushAmount,proto3" json:"offer_push_amount,omitempty"`
// The offered lease duration in blocks.
OfferLeaseDurationBlocks uint32 `protobuf:"varint,6,opt,name=offer_lease_duration_blocks,json=offerLeaseDurationBlocks,proto3" json:"offer_lease_duration_blocks,omitempty"`
// The public key the offer was signed with.
OfferSignPubkey []byte `protobuf:"bytes,7,opt,name=offer_sign_pubkey,json=offerSignPubkey,proto3" json:"offer_sign_pubkey,omitempty"`
// The signature over the offer's digest.
OfferSignature []byte `protobuf:"bytes,8,opt,name=offer_signature,json=offerSignature,proto3" json:"offer_signature,omitempty"`
// Whether the offer was created with the automatic order creation flag.
OfferAuto bool `protobuf:"varint,9,opt,name=offer_auto,json=offerAuto,proto3" json:"offer_auto,omitempty"`
// The recipient node's public identity key.
RecipientNodePubkey []byte `protobuf:"bytes,10,opt,name=recipient_node_pubkey,json=recipientNodePubkey,proto3" json:"recipient_node_pubkey,omitempty"`
// The recipient node's channel multisig public key to be used for the sidecar
// channel.
RecipientMultisigPubkey []byte `protobuf:"bytes,11,opt,name=recipient_multisig_pubkey,json=recipientMultisigPubkey,proto3" json:"recipient_multisig_pubkey,omitempty"`
// The index used when deriving the above multisig pubkey.
RecipientMultisigPubkeyIndex uint32 `protobuf:"varint,12,opt,name=recipient_multisig_pubkey_index,json=recipientMultisigPubkeyIndex,proto3" json:"recipient_multisig_pubkey_index,omitempty"`
// The nonce of the bid order created for this sidecar ticket.
OrderBidNonce []byte `protobuf:"bytes,13,opt,name=order_bid_nonce,json=orderBidNonce,proto3" json:"order_bid_nonce,omitempty"`
// The signature over the order's digest, signed with the private key that
// corresponds to the offer_sign_pubkey.
OrderSignature []byte `protobuf:"bytes,14,opt,name=order_signature,json=orderSignature,proto3" json:"order_signature,omitempty"`
// The pending channel ID of the sidecar channel during the execution phase.
ExecutionPendingChannelId []byte `protobuf:"bytes,15,opt,name=execution_pending_channel_id,json=executionPendingChannelId,proto3" json:"execution_pending_channel_id,omitempty"`
// The original, base58 encoded ticket.
EncodedTicket string `protobuf:"bytes,16,opt,name=encoded_ticket,json=encodedTicket,proto3" json:"encoded_ticket,omitempty"`
// If true, the channel acceptor for this ticket will expect an unannounced
// channel.
OfferUnannouncedChannel bool `protobuf:"varint,17,opt,name=offer_unannounced_channel,json=offerUnannouncedChannel,proto3" json:"offer_unannounced_channel,omitempty"`
// If true, the channel acceptor for this ticket will expect a zero conf
// channel.
OfferZeroConfChannel bool `protobuf:"varint,18,opt,name=offer_zero_conf_channel,json=offerZeroConfChannel,proto3" json:"offer_zero_conf_channel,omitempty"`
}
func (x *DecodedSidecarTicket) Reset() {
*x = DecodedSidecarTicket{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[59]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DecodedSidecarTicket) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DecodedSidecarTicket) ProtoMessage() {}
func (x *DecodedSidecarTicket) ProtoReflect() protoreflect.Message {
mi := &file_trader_proto_msgTypes[59]
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 DecodedSidecarTicket.ProtoReflect.Descriptor instead.
func (*DecodedSidecarTicket) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{59}
}
func (x *DecodedSidecarTicket) GetId() []byte {
if x != nil {
return x.Id
}
return nil
}
func (x *DecodedSidecarTicket) GetVersion() uint32 {
if x != nil {
return x.Version
}
return 0
}
func (x *DecodedSidecarTicket) GetState() string {
if x != nil {
return x.State
}
return ""
}
func (x *DecodedSidecarTicket) GetOfferCapacity() uint64 {
if x != nil {
return x.OfferCapacity
}
return 0
}
func (x *DecodedSidecarTicket) GetOfferPushAmount() uint64 {
if x != nil {
return x.OfferPushAmount
}
return 0
}
func (x *DecodedSidecarTicket) GetOfferLeaseDurationBlocks() uint32 {
if x != nil {
return x.OfferLeaseDurationBlocks
}
return 0
}
func (x *DecodedSidecarTicket) GetOfferSignPubkey() []byte {
if x != nil {
return x.OfferSignPubkey
}
return nil
}
func (x *DecodedSidecarTicket) GetOfferSignature() []byte {
if x != nil {
return x.OfferSignature
}
return nil
}
func (x *DecodedSidecarTicket) GetOfferAuto() bool {
if x != nil {
return x.OfferAuto
}
return false
}
func (x *DecodedSidecarTicket) GetRecipientNodePubkey() []byte {
if x != nil {
return x.RecipientNodePubkey
}
return nil
}
func (x *DecodedSidecarTicket) GetRecipientMultisigPubkey() []byte {
if x != nil {
return x.RecipientMultisigPubkey
}
return nil
}
func (x *DecodedSidecarTicket) GetRecipientMultisigPubkeyIndex() uint32 {
if x != nil {
return x.RecipientMultisigPubkeyIndex
}
return 0
}
func (x *DecodedSidecarTicket) GetOrderBidNonce() []byte {
if x != nil {
return x.OrderBidNonce
}
return nil
}
func (x *DecodedSidecarTicket) GetOrderSignature() []byte {
if x != nil {
return x.OrderSignature
}
return nil
}
func (x *DecodedSidecarTicket) GetExecutionPendingChannelId() []byte {
if x != nil {
return x.ExecutionPendingChannelId
}
return nil
}
func (x *DecodedSidecarTicket) GetEncodedTicket() string {
if x != nil {
return x.EncodedTicket
}
return ""
}
func (x *DecodedSidecarTicket) GetOfferUnannouncedChannel() bool {
if x != nil {
return x.OfferUnannouncedChannel
}
return false
}
func (x *DecodedSidecarTicket) GetOfferZeroConfChannel() bool {
if x != nil {
return x.OfferZeroConfChannel
}
return false
}
type RegisterSidecarRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The sidecar ticket to register and add the node and channel funding
// information to. The ticket must be in the state "offered".
Ticket string `protobuf:"bytes,1,opt,name=ticket,proto3" json:"ticket,omitempty"`
// If this value is True, then the daemon will attempt to finish negotiating
// the details of the sidecar channel automatically in the background. The
// progress of the ticket can be monitored using the SidecarState RPC. In
// addition, if this flag is set, then this method will _block_ until the
// sidecar negotiation either finishes or breaks down.
AutoNegotiate bool `protobuf:"varint,2,opt,name=auto_negotiate,json=autoNegotiate,proto3" json:"auto_negotiate,omitempty"`
}
func (x *RegisterSidecarRequest) Reset() {
*x = RegisterSidecarRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[60]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RegisterSidecarRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RegisterSidecarRequest) ProtoMessage() {}
func (x *RegisterSidecarRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_proto_msgTypes[60]
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 RegisterSidecarRequest.ProtoReflect.Descriptor instead.
func (*RegisterSidecarRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{60}
}
func (x *RegisterSidecarRequest) GetTicket() string {
if x != nil {
return x.Ticket
}
return ""
}
func (x *RegisterSidecarRequest) GetAutoNegotiate() bool {
if x != nil {
return x.AutoNegotiate
}
return false
}
type ExpectSidecarChannelRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The sidecar ticket to expect an incoming channel for. The ticket must be in
// the state "ordered".
Ticket string `protobuf:"bytes,1,opt,name=ticket,proto3" json:"ticket,omitempty"`
}
func (x *ExpectSidecarChannelRequest) Reset() {
*x = ExpectSidecarChannelRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[61]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ExpectSidecarChannelRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ExpectSidecarChannelRequest) ProtoMessage() {}
func (x *ExpectSidecarChannelRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_proto_msgTypes[61]
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 ExpectSidecarChannelRequest.ProtoReflect.Descriptor instead.
func (*ExpectSidecarChannelRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{61}
}
func (x *ExpectSidecarChannelRequest) GetTicket() string {
if x != nil {
return x.Ticket
}
return ""
}
type ExpectSidecarChannelResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *ExpectSidecarChannelResponse) Reset() {
*x = ExpectSidecarChannelResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[62]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ExpectSidecarChannelResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ExpectSidecarChannelResponse) ProtoMessage() {}
func (x *ExpectSidecarChannelResponse) ProtoReflect() protoreflect.Message {
mi := &file_trader_proto_msgTypes[62]
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 ExpectSidecarChannelResponse.ProtoReflect.Descriptor instead.
func (*ExpectSidecarChannelResponse) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{62}
}
type ListSidecarsRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The optional sidecar ID to filter for. If set, the result should either be
// a single ticket or no ticket in most cases. But because the ID is just 8
// bytes and is randomly generated, there could be collisions, especially since
// tickets can also be crafted by a malicious party and given to any node.
// That's why the offer's public key is also used as an identifying element
// since that cannot easily be forged without also producing a valid signature.
// So an attacker cannot overwrite a ticket a node offered by themselves
// offering a ticket with the same ID and tricking the victim into registering
// that. Long story sort, there could be multiple tickets with the same ID but
// different offer public keys, which is why those keys should be checked as
// well.
SidecarId []byte `protobuf:"bytes,1,opt,name=sidecar_id,json=sidecarId,proto3" json:"sidecar_id,omitempty"`
}
func (x *ListSidecarsRequest) Reset() {
*x = ListSidecarsRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[63]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListSidecarsRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListSidecarsRequest) ProtoMessage() {}
func (x *ListSidecarsRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_proto_msgTypes[63]
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 ListSidecarsRequest.ProtoReflect.Descriptor instead.
func (*ListSidecarsRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{63}
}
func (x *ListSidecarsRequest) GetSidecarId() []byte {
if x != nil {
return x.SidecarId
}
return nil
}
type ListSidecarsResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Tickets []*DecodedSidecarTicket `protobuf:"bytes,1,rep,name=tickets,proto3" json:"tickets,omitempty"`
}
func (x *ListSidecarsResponse) Reset() {
*x = ListSidecarsResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[64]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListSidecarsResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListSidecarsResponse) ProtoMessage() {}
func (x *ListSidecarsResponse) ProtoReflect() protoreflect.Message {
mi := &file_trader_proto_msgTypes[64]
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 ListSidecarsResponse.ProtoReflect.Descriptor instead.
func (*ListSidecarsResponse) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{64}
}
func (x *ListSidecarsResponse) GetTickets() []*DecodedSidecarTicket {
if x != nil {
return x.Tickets
}
return nil
}
type CancelSidecarRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
SidecarId []byte `protobuf:"bytes,1,opt,name=sidecar_id,json=sidecarId,proto3" json:"sidecar_id,omitempty"`
}
func (x *CancelSidecarRequest) Reset() {
*x = CancelSidecarRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[65]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CancelSidecarRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CancelSidecarRequest) ProtoMessage() {}
func (x *CancelSidecarRequest) ProtoReflect() protoreflect.Message {
mi := &file_trader_proto_msgTypes[65]
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 CancelSidecarRequest.ProtoReflect.Descriptor instead.
func (*CancelSidecarRequest) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{65}
}
func (x *CancelSidecarRequest) GetSidecarId() []byte {
if x != nil {
return x.SidecarId
}
return nil
}
type CancelSidecarResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *CancelSidecarResponse) Reset() {
*x = CancelSidecarResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_trader_proto_msgTypes[66]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CancelSidecarResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CancelSidecarResponse) ProtoMessage() {}
func (x *CancelSidecarResponse) ProtoReflect() protoreflect.Message {
mi := &file_trader_proto_msgTypes[66]
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 CancelSidecarResponse.ProtoReflect.Descriptor instead.
func (*CancelSidecarResponse) Descriptor() ([]byte, []int) {
return file_trader_proto_rawDescGZIP(), []int{66}
}
var File_trader_proto protoreflect.FileDescriptor
var file_trader_proto_rawDesc = []byte{
0x0a, 0x0c, 0x74, 0x72, 0x61, 0x64, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x07,
0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x1a, 0x1e, 0x61, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e,
0x65, 0x65, 0x72, 0x72, 0x70, 0x63, 0x2f, 0x61, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x65, 0x65,
0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xcd, 0x02, 0x0a, 0x12, 0x49, 0x6e, 0x69, 0x74,
0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23,
0x0a, 0x0d, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18,
0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x61,
0x6c, 0x75, 0x65, 0x12, 0x29, 0x0a, 0x0f, 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x5f,
0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x0e,
0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x29,
0x0a, 0x0f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68,
0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x0e, 0x72, 0x65, 0x6c, 0x61, 0x74,
0x69, 0x76, 0x65, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x21, 0x0a, 0x0b, 0x63, 0x6f, 0x6e,
0x66, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01,
0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x2e, 0x0a, 0x13,
0x66, 0x65, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x61, 0x74, 0x5f, 0x70, 0x65, 0x72,
0x5f, 0x6b, 0x77, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x0f, 0x66, 0x65, 0x65,
0x52, 0x61, 0x74, 0x65, 0x53, 0x61, 0x74, 0x50, 0x65, 0x72, 0x4b, 0x77, 0x12, 0x1c, 0x0a, 0x09,
0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52,
0x09, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x31, 0x0a, 0x07, 0x76, 0x65,
0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x70, 0x6f,
0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x65, 0x72,
0x73, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x10, 0x0a,
0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x42,
0x06, 0x0a, 0x04, 0x66, 0x65, 0x65, 0x73, 0x22, 0x65, 0x0a, 0x13, 0x51, 0x75, 0x6f, 0x74, 0x65,
0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23,
0x0a, 0x0d, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18,
0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x61,
0x6c, 0x75, 0x65, 0x12, 0x21, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x5f, 0x74, 0x61, 0x72, 0x67,
0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66,
0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x42, 0x06, 0x0a, 0x04, 0x66, 0x65, 0x65, 0x73, 0x22, 0x77,
0x0a, 0x14, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x19, 0x6d, 0x69, 0x6e, 0x65, 0x72, 0x5f,
0x66, 0x65, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x61, 0x74, 0x5f, 0x70, 0x65, 0x72,
0x5f, 0x6b, 0x77, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x14, 0x6d, 0x69, 0x6e, 0x65, 0x72,
0x46, 0x65, 0x65, 0x52, 0x61, 0x74, 0x65, 0x53, 0x61, 0x74, 0x50, 0x65, 0x72, 0x4b, 0x77, 0x12,
0x26, 0x0a, 0x0f, 0x6d, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x74, 0x6f, 0x74,
0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x6d, 0x69, 0x6e, 0x65, 0x72, 0x46,
0x65, 0x65, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x22, 0x36, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x41,
0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f,
0x0a, 0x0b, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x01, 0x20,
0x01, 0x28, 0x08, 0x52, 0x0a, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x22,
0x44, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x08, 0x61, 0x63, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x6f, 0x6f, 0x6c,
0x72, 0x70, 0x63, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x08, 0x61, 0x63, 0x63,
0x6f, 0x75, 0x6e, 0x74, 0x73, 0x22, 0x3f, 0x0a, 0x06, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12,
0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01,
0x28, 0x04, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x61, 0x74, 0x12, 0x18, 0x0a, 0x07,
0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61,
0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x84, 0x01, 0x0a, 0x0d, 0x4f, 0x75, 0x74, 0x70, 0x75,
0x74, 0x57, 0x69, 0x74, 0x68, 0x46, 0x65, 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, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65,
0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x54,
0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x61, 0x74,
0x65, 0x5f, 0x73, 0x61, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6b, 0x77, 0x18, 0x03, 0x20, 0x01,
0x28, 0x04, 0x48, 0x00, 0x52, 0x0f, 0x66, 0x65, 0x65, 0x52, 0x61, 0x74, 0x65, 0x53, 0x61, 0x74,
0x50, 0x65, 0x72, 0x4b, 0x77, 0x42, 0x06, 0x0a, 0x04, 0x66, 0x65, 0x65, 0x73, 0x22, 0x43, 0x0a,
0x16, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x49, 0x6d, 0x70, 0x6c,
0x69, 0x63, 0x69, 0x74, 0x46, 0x65, 0x65, 0x12, 0x29, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75,
0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72,
0x70, 0x63, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75,
0x74, 0x73, 0x22, 0xc8, 0x01, 0x0a, 0x13, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x41, 0x63, 0x63, 0x6f,
0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x72,
0x61, 0x64, 0x65, 0x72, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09,
0x74, 0x72, 0x61, 0x64, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x12, 0x40, 0x0a, 0x0f, 0x6f, 0x75, 0x74,
0x70, 0x75, 0x74, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x66, 0x65, 0x65, 0x18, 0x02, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x75, 0x74,
0x70, 0x75, 0x74, 0x57, 0x69, 0x74, 0x68, 0x46, 0x65, 0x65, 0x48, 0x00, 0x52, 0x0d, 0x6f, 0x75,
0x74, 0x70, 0x75, 0x74, 0x57, 0x69, 0x74, 0x68, 0x46, 0x65, 0x65, 0x12, 0x3b, 0x0a, 0x07, 0x6f,
0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70,
0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x57, 0x69,
0x74, 0x68, 0x49, 0x6d, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x46, 0x65, 0x65, 0x48, 0x00, 0x52,
0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x42, 0x13, 0x0a, 0x11, 0x66, 0x75, 0x6e, 0x64,
0x73, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x35, 0x0a,
0x14, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74,
0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x6c, 0x6f, 0x73, 0x65,
0x54, 0x78, 0x69, 0x64, 0x22, 0xb2, 0x02, 0x0a, 0x16, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61,
0x77, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x1d, 0x0a, 0x0a, 0x74, 0x72, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0c, 0x52, 0x09, 0x74, 0x72, 0x61, 0x64, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x12, 0x29,
0x0a, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x0f, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74,
0x52, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x12, 0x2c, 0x0a, 0x13, 0x66, 0x65, 0x65,
0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x61, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6b, 0x77,
0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x66, 0x65, 0x65, 0x52, 0x61, 0x74, 0x65, 0x53,
0x61, 0x74, 0x50, 0x65, 0x72, 0x4b, 0x77, 0x12, 0x29, 0x0a, 0x0f, 0x61, 0x62, 0x73, 0x6f, 0x6c,
0x75, 0x74, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d,
0x48, 0x00, 0x52, 0x0e, 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x45, 0x78, 0x70, 0x69,
0x72, 0x79, 0x12, 0x29, 0x0a, 0x0f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65,
0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x0e, 0x72,
0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x45, 0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x38, 0x0a,
0x0b, 0x6e, 0x65, 0x77, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01,
0x28, 0x0e, 0x32, 0x17, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x63, 0x63,
0x6f, 0x75, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x6e, 0x65, 0x77,
0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x10, 0x0a, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x22, 0x6a, 0x0a, 0x17, 0x57, 0x69, 0x74,
0x68, 0x64, 0x72, 0x61, 0x77, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18,
0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e,
0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74,
0x12, 0x23, 0x0a, 0x0d, 0x77, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x5f, 0x74, 0x78, 0x69,
0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x77, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61,
0x77, 0x54, 0x78, 0x69, 0x64, 0x22, 0xa5, 0x02, 0x0a, 0x15, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69,
0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x1d, 0x0a, 0x0a, 0x74, 0x72, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0c, 0x52, 0x09, 0x74, 0x72, 0x61, 0x64, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x12, 0x1d,
0x0a, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01,
0x28, 0x04, 0x52, 0x09, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x61, 0x74, 0x12, 0x2c, 0x0a,
0x13, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x61, 0x74, 0x5f, 0x70, 0x65,
0x72, 0x5f, 0x6b, 0x77, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x66, 0x65, 0x65, 0x52,
0x61, 0x74, 0x65, 0x53, 0x61, 0x74, 0x50, 0x65, 0x72, 0x4b, 0x77, 0x12, 0x29, 0x0a, 0x0f, 0x61,
0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x04,
0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x0e, 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65,
0x45, 0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x29, 0x0a, 0x0f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69,
0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x48,
0x00, 0x52, 0x0e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x45, 0x78, 0x70, 0x69, 0x72,
0x79, 0x12, 0x38, 0x0a, 0x0b, 0x6e, 0x65, 0x77, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63,
0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52,
0x0a, 0x6e, 0x65, 0x77, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x10, 0x0a, 0x0e, 0x61,
0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x22, 0x67, 0x0a,
0x16, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72,
0x70, 0x63, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f,
0x75, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x5f, 0x74,
0x78, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x64, 0x65, 0x70, 0x6f, 0x73,
0x69, 0x74, 0x54, 0x78, 0x69, 0x64, 0x22, 0x86, 0x02, 0x0a, 0x13, 0x52, 0x65, 0x6e, 0x65, 0x77,
0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f,
0x0a, 0x0b, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0c, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4b, 0x65, 0x79, 0x12,
0x29, 0x0a, 0x0f, 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69,
0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x0e, 0x61, 0x62, 0x73, 0x6f,
0x6c, 0x75, 0x74, 0x65, 0x45, 0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x29, 0x0a, 0x0f, 0x72, 0x65,
0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x03, 0x20,
0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x0e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x45,
0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x2c, 0x0a, 0x13, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x61, 0x74,
0x65, 0x5f, 0x73, 0x61, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6b, 0x77, 0x18, 0x04, 0x20, 0x01,
0x28, 0x04, 0x52, 0x0f, 0x66, 0x65, 0x65, 0x52, 0x61, 0x74, 0x65, 0x53, 0x61, 0x74, 0x50, 0x65,
0x72, 0x4b, 0x77, 0x12, 0x38, 0x0a, 0x0b, 0x6e, 0x65, 0x77, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69,
0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72,
0x70, 0x63, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f,
0x6e, 0x52, 0x0a, 0x6e, 0x65, 0x77, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x10, 0x0a,
0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x22,
0x65, 0x0a, 0x14, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72,
0x70, 0x63, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f,
0x75, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x6e, 0x65, 0x77, 0x61, 0x6c, 0x5f, 0x74,
0x78, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x72, 0x65, 0x6e, 0x65, 0x77,
0x61, 0x6c, 0x54, 0x78, 0x69, 0x64, 0x22, 0x64, 0x0a, 0x15, 0x42, 0x75, 0x6d, 0x70, 0x41, 0x63,
0x63, 0x6f, 0x75, 0x6e, 0x74, 0x46, 0x65, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x1d, 0x0a, 0x0a, 0x74, 0x72, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0c, 0x52, 0x09, 0x74, 0x72, 0x61, 0x64, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x12, 0x2c,
0x0a, 0x13, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x61, 0x74, 0x5f, 0x70,
0x65, 0x72, 0x5f, 0x6b, 0x77, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x66, 0x65, 0x65,
0x52, 0x61, 0x74, 0x65, 0x53, 0x61, 0x74, 0x50, 0x65, 0x72, 0x4b, 0x77, 0x22, 0x18, 0x0a, 0x16,
0x42, 0x75, 0x6d, 0x70, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x46, 0x65, 0x65, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc8, 0x02, 0x0a, 0x07, 0x41, 0x63, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x72, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x6b, 0x65, 0x79,
0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x74, 0x72, 0x61, 0x64, 0x65, 0x72, 0x4b, 0x65,
0x79, 0x12, 0x2d, 0x0a, 0x08, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x02, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x75,
0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x08, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74,
0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52,
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61,
0x62, 0x6c, 0x65, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
0x04, 0x52, 0x10, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x42, 0x61, 0x6c, 0x61,
0x6e, 0x63, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10,
0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74,
0x12, 0x2b, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32,
0x15, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e,
0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1f, 0x0a,
0x0b, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01,
0x28, 0x0c, 0x52, 0x0a, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x54, 0x78, 0x69, 0x64, 0x12, 0x31,
0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32,
0x17, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e,
0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
0x6e, 0x22, 0x81, 0x01, 0x0a, 0x12, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x4f, 0x72, 0x64, 0x65,
0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x03, 0x61, 0x73, 0x6b, 0x18,
0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e,
0x41, 0x73, 0x6b, 0x48, 0x00, 0x52, 0x03, 0x61, 0x73, 0x6b, 0x12, 0x20, 0x0a, 0x03, 0x62, 0x69,
0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70,
0x63, 0x2e, 0x42, 0x69, 0x64, 0x48, 0x00, 0x52, 0x03, 0x62, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09,
0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
0x09, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x09, 0x0a, 0x07, 0x64, 0x65,
0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0xc8, 0x01, 0x0a, 0x13, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74,
0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3c, 0x0a,
0x0d, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x01,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x49,
0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0c, 0x69,
0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x32, 0x0a, 0x14, 0x61,
0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x6e, 0x6f,
0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x12, 0x61, 0x63, 0x63,
0x65, 0x70, 0x74, 0x65, 0x64, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12,
0x34, 0x0a, 0x16, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x69, 0x64, 0x65, 0x63,
0x61, 0x72, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
0x14, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x53, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x54,
0x69, 0x63, 0x6b, 0x65, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73,
0x22, 0x4e, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65,
0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x76, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65, 0x12,
0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x02,
0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4f, 0x6e, 0x6c, 0x79,
0x22, 0x58, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x20, 0x0a, 0x04, 0x61, 0x73, 0x6b, 0x73, 0x18, 0x01,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x41,
0x73, 0x6b, 0x52, 0x04, 0x61, 0x73, 0x6b, 0x73, 0x12, 0x20, 0x0a, 0x04, 0x62, 0x69, 0x64, 0x73,
0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63,
0x2e, 0x42, 0x69, 0x64, 0x52, 0x04, 0x62, 0x69, 0x64, 0x73, 0x22, 0x35, 0x0a, 0x12, 0x43, 0x61,
0x6e, 0x63, 0x65, 0x6c, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18,
0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x4e, 0x6f, 0x6e, 0x63,
0x65, 0x22, 0x15, 0x0a, 0x13, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x4f, 0x72, 0x64, 0x65, 0x72,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xcc, 0x05, 0x0a, 0x05, 0x4f, 0x72, 0x64,
0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x72, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x6b, 0x65, 0x79,
0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x74, 0x72, 0x61, 0x64, 0x65, 0x72, 0x4b, 0x65,
0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x66, 0x69, 0x78, 0x65, 0x64, 0x18,
0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x72, 0x61, 0x74, 0x65, 0x46, 0x69, 0x78, 0x65, 0x64,
0x12, 0x10, 0x0a, 0x03, 0x61, 0x6d, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x61,
0x6d, 0x74, 0x12, 0x3e, 0x0a, 0x1d, 0x6d, 0x61, 0x78, 0x5f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f,
0x66, 0x65, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x61, 0x74, 0x5f, 0x70, 0x65, 0x72,
0x5f, 0x6b, 0x77, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x17, 0x6d, 0x61, 0x78, 0x42, 0x61,
0x74, 0x63, 0x68, 0x46, 0x65, 0x65, 0x52, 0x61, 0x74, 0x65, 0x53, 0x61, 0x74, 0x50, 0x65, 0x72,
0x4b, 0x77, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x6e, 0x63,
0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x4e, 0x6f,
0x6e, 0x63, 0x65, 0x12, 0x29, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01,
0x28, 0x0e, 0x32, 0x13, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64,
0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x14,
0x0a, 0x05, 0x75, 0x6e, 0x69, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x75,
0x6e, 0x69, 0x74, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x75, 0x6e, 0x69, 0x74, 0x73, 0x5f, 0x75, 0x6e,
0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52,
0x10, 0x75, 0x6e, 0x69, 0x74, 0x73, 0x55, 0x6e, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65,
0x64, 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x76, 0x61,
0x6c, 0x75, 0x65, 0x5f, 0x73, 0x61, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x72,
0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x61, 0x74, 0x12,
0x32, 0x0a, 0x15, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65,
0x73, 0x74, 0x61, 0x6d, 0x70, 0x5f, 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x13,
0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
0x70, 0x4e, 0x73, 0x12, 0x2b, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0b, 0x20,
0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72,
0x64, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73,
0x12, 0x26, 0x0a, 0x0f, 0x6d, 0x69, 0x6e, 0x5f, 0x75, 0x6e, 0x69, 0x74, 0x73, 0x5f, 0x6d, 0x61,
0x74, 0x63, 0x68, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x69, 0x6e, 0x55, 0x6e,
0x69, 0x74, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x3c, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e,
0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19,
0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x43, 0x68,
0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e,
0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65,
0x64, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0c,
0x52, 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x73,
0x12, 0x2f, 0x0a, 0x14, 0x6e, 0x6f, 0x74, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f,
0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x11,
0x6e, 0x6f, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64,
0x73, 0x12, 0x37, 0x0a, 0x0c, 0x61, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70,
0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70,
0x63, 0x2e, 0x41, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x61,
0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73,
0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69,
0x73, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x22, 0xe4, 0x02, 0x0a, 0x03, 0x42, 0x69, 0x64, 0x12,
0x28, 0x0a, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x0e, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72,
0x52, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x6c, 0x65, 0x61,
0x73, 0x65, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x6c, 0x6f, 0x63,
0x6b, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x44,
0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x12, 0x18, 0x0a,
0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07,
0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x0a, 0x0d, 0x6d, 0x69, 0x6e, 0x5f, 0x6e,
0x6f, 0x64, 0x65, 0x5f, 0x74, 0x69, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11,
0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x54, 0x69, 0x65,
0x72, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x4e, 0x6f, 0x64, 0x65, 0x54, 0x69, 0x65, 0x72, 0x12, 0x2a,
0x0a, 0x11, 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x62, 0x61, 0x6c, 0x61,
0x6e, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x73, 0x65, 0x6c, 0x66, 0x43,
0x68, 0x61, 0x6e, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x69,
0x64, 0x65, 0x63, 0x61, 0x72, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x06, 0x20, 0x01,
0x28, 0x09, 0x52, 0x0d, 0x73, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x65,
0x74, 0x12, 0x2f, 0x0a, 0x13, 0x75, 0x6e, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x64,
0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12,
0x75, 0x6e, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e,
0x65, 0x6c, 0x12, 0x2a, 0x0a, 0x11, 0x7a, 0x65, 0x72, 0x6f, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x5f,
0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x7a,
0x65, 0x72, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x22, 0xc5,
0x02, 0x0a, 0x03, 0x41, 0x73, 0x6b, 0x12, 0x28, 0x0a, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c,
0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70,
0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73,
0x12, 0x32, 0x0a, 0x15, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52,
0x13, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x6c,
0x6f, 0x63, 0x6b, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18,
0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x62,
0x0a, 0x18, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x63,
0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e,
0x32, 0x27, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e,
0x65, 0x6c, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f,
0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x17, 0x61, 0x6e, 0x6e, 0x6f, 0x75,
0x6e, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e,
0x74, 0x73, 0x12, 0x62, 0x0a, 0x18, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x05,
0x20, 0x01, 0x28, 0x0e, 0x32, 0x27, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x43,
0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x17, 0x63,
0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x73, 0x74,
0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x22, 0xe0, 0x01, 0x0a, 0x11, 0x51, 0x75, 0x6f, 0x74, 0x65,
0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03,
0x61, 0x6d, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x61, 0x6d, 0x74, 0x12, 0x1d,
0x0a, 0x0a, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x66, 0x69, 0x78, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01,
0x28, 0x0d, 0x52, 0x09, 0x72, 0x61, 0x74, 0x65, 0x46, 0x69, 0x78, 0x65, 0x64, 0x12, 0x32, 0x0a,
0x15, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x6c, 0x65,
0x61, 0x73, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x6c, 0x6f, 0x63, 0x6b,
0x73, 0x12, 0x3e, 0x0a, 0x1d, 0x6d, 0x61, 0x78, 0x5f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x66,
0x65, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x61, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x5f,
0x6b, 0x77, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x17, 0x6d, 0x61, 0x78, 0x42, 0x61, 0x74,
0x63, 0x68, 0x46, 0x65, 0x65, 0x52, 0x61, 0x74, 0x65, 0x53, 0x61, 0x74, 0x50, 0x65, 0x72, 0x4b,
0x77, 0x12, 0x26, 0x0a, 0x0f, 0x6d, 0x69, 0x6e, 0x5f, 0x75, 0x6e, 0x69, 0x74, 0x73, 0x5f, 0x6d,
0x61, 0x74, 0x63, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x69, 0x6e, 0x55,
0x6e, 0x69, 0x74, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x22, 0xf8, 0x01, 0x0a, 0x12, 0x51, 0x75,
0x6f, 0x74, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x2a, 0x0a, 0x11, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x70, 0x72, 0x65, 0x6d, 0x69, 0x75,
0x6d, 0x5f, 0x73, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x74, 0x6f, 0x74,
0x61, 0x6c, 0x50, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x53, 0x61, 0x74, 0x12, 0x24, 0x0a, 0x0e,
0x72, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x02,
0x20, 0x01, 0x28, 0x01, 0x52, 0x0c, 0x72, 0x61, 0x74, 0x65, 0x50, 0x65, 0x72, 0x42, 0x6c, 0x6f,
0x63, 0x6b, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65,
0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0b, 0x72, 0x61, 0x74, 0x65, 0x50, 0x65,
0x72, 0x63, 0x65, 0x6e, 0x74, 0x12, 0x35, 0x0a, 0x17, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x65,
0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x73, 0x61, 0x74,
0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x14, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x45, 0x78, 0x65,
0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x65, 0x53, 0x61, 0x74, 0x12, 0x36, 0x0a, 0x18,
0x77, 0x6f, 0x72, 0x73, 0x74, 0x5f, 0x63, 0x61, 0x73, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e,
0x5f, 0x66, 0x65, 0x65, 0x5f, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x14,
0x77, 0x6f, 0x72, 0x73, 0x74, 0x43, 0x61, 0x73, 0x65, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x46, 0x65,
0x65, 0x53, 0x61, 0x74, 0x22, 0xc2, 0x01, 0x0a, 0x0a, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x45, 0x76,
0x65, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
0x5f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x73,
0x74, 0x61, 0x6d, 0x70, 0x4e, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f,
0x73, 0x74, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74,
0x53, 0x74, 0x72, 0x12, 0x3a, 0x0a, 0x0c, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x68, 0x61,
0x6e, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x6f, 0x6f, 0x6c,
0x72, 0x70, 0x63, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74,
0x48, 0x00, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12,
0x2f, 0x0a, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x13, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68,
0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64,
0x42, 0x07, 0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x22, 0x9f, 0x01, 0x0a, 0x0c, 0x55, 0x70,
0x64, 0x61, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3a, 0x0a, 0x0e, 0x70, 0x72,
0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01,
0x28, 0x0e, 0x32, 0x13, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64,
0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0d, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75,
0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x30, 0x0a, 0x09, 0x6e, 0x65, 0x77, 0x5f, 0x73, 0x74,
0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x70, 0x6f, 0x6f, 0x6c,
0x72, 0x70, 0x63, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x08,
0x6e, 0x65, 0x77, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x75, 0x6e, 0x69, 0x74,
0x73, 0x5f, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b,
0x75, 0x6e, 0x69, 0x74, 0x73, 0x46, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x22, 0xcb, 0x01, 0x0a, 0x0a,
0x4d, 0x61, 0x74, 0x63, 0x68, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x34, 0x0a, 0x0b, 0x6d, 0x61,
0x74, 0x63, 0x68, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32,
0x13, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53,
0x74, 0x61, 0x74, 0x65, 0x52, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65,
0x12, 0x21, 0x0a, 0x0c, 0x75, 0x6e, 0x69, 0x74, 0x73, 0x5f, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64,
0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x75, 0x6e, 0x69, 0x74, 0x73, 0x46, 0x69, 0x6c,
0x6c, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x5f, 0x6f,
0x72, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x6d, 0x61, 0x74, 0x63,
0x68, 0x65, 0x64, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x3f, 0x0a, 0x0d, 0x72, 0x65, 0x6a, 0x65,
0x63, 0x74, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32,
0x1a, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52,
0x65, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x0c, 0x72, 0x65, 0x6a,
0x65, 0x63, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0x9c, 0x03, 0x0a, 0x16, 0x52, 0x65,
0x63, 0x6f, 0x76, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x75, 0x6c, 0x6c, 0x5f, 0x63, 0x6c, 0x69,
0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x66, 0x75, 0x6c, 0x6c, 0x43,
0x6c, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74,
0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x61,
0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x25, 0x0a, 0x0e,
0x61, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x65, 0x65, 0x72, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x03,
0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x65, 0x65, 0x72,
0x4b, 0x65, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x68, 0x69,
0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74,
0x48, 0x69, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x69, 0x74, 0x63, 0x6f, 0x69, 0x6e, 0x5f,
0x68, 0x6f, 0x73, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x62, 0x69, 0x74, 0x63,
0x6f, 0x69, 0x6e, 0x48, 0x6f, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x69, 0x74, 0x63, 0x6f,
0x69, 0x6e, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x62,
0x69, 0x74, 0x63, 0x6f, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x12, 0x29, 0x0a, 0x10, 0x62, 0x69,
0x74, 0x63, 0x6f, 0x69, 0x6e, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x07,
0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x62, 0x69, 0x74, 0x63, 0x6f, 0x69, 0x6e, 0x50, 0x61, 0x73,
0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x31, 0x0a, 0x14, 0x62, 0x69, 0x74, 0x63, 0x6f, 0x69, 0x6e,
0x5f, 0x68, 0x74, 0x74, 0x70, 0x70, 0x6f, 0x73, 0x74, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20,
0x01, 0x28, 0x08, 0x52, 0x13, 0x62, 0x69, 0x74, 0x63, 0x6f, 0x69, 0x6e, 0x48, 0x74, 0x74, 0x70,
0x70, 0x6f, 0x73, 0x74, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x62, 0x69, 0x74, 0x63,
0x6f, 0x69, 0x6e, 0x5f, 0x75, 0x73, 0x65, 0x74, 0x6c, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08,
0x52, 0x0d, 0x62, 0x69, 0x74, 0x63, 0x6f, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x74, 0x6c, 0x73, 0x12,
0x27, 0x0a, 0x0f, 0x62, 0x69, 0x74, 0x63, 0x6f, 0x69, 0x6e, 0x5f, 0x74, 0x6c, 0x73, 0x70, 0x61,
0x74, 0x68, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x69, 0x74, 0x63, 0x6f, 0x69,
0x6e, 0x54, 0x6c, 0x73, 0x70, 0x61, 0x74, 0x68, 0x22, 0x4f, 0x0a, 0x17, 0x52, 0x65, 0x63, 0x6f,
0x76, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x16, 0x6e, 0x75, 0x6d, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x76,
0x65, 0x72, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0d, 0x52, 0x14, 0x6e, 0x75, 0x6d, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65,
0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x22, 0x20, 0x0a, 0x1e, 0x41, 0x63, 0x63,
0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x46, 0x65, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xed, 0x01, 0x0a, 0x16,
0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x46, 0x65, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12,
0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x78,
0x69, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67,
0x68, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48,
0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74,
0x61, 0x6d, 0x70, 0x12, 0x23, 0x0a, 0x0d, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x61, 0x6d,
0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6f, 0x75, 0x74, 0x70,
0x75, 0x74, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x08, 0x66, 0x65, 0x65, 0x5f,
0x6e, 0x75, 0x6c, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x07, 0x66, 0x65,
0x65, 0x4e, 0x75, 0x6c, 0x6c, 0x12, 0x1d, 0x0a, 0x09, 0x66, 0x65, 0x65, 0x5f, 0x76, 0x61, 0x6c,
0x75, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x08, 0x66, 0x65, 0x65, 0x56,
0x61, 0x6c, 0x75, 0x65, 0x42, 0x05, 0x0a, 0x03, 0x66, 0x65, 0x65, 0x22, 0x6d, 0x0a, 0x1d, 0x4c,
0x69, 0x73, 0x74, 0x4f, 0x66, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x6f, 0x64, 0x69,
0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x65, 0x73, 0x12, 0x4c, 0x0a, 0x11,
0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x65, 0x65,
0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70,
0x63, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x65, 0x52, 0x10, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x65, 0x73, 0x22, 0xda, 0x01, 0x0a, 0x1f, 0x41,
0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x46, 0x65, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x52,
0x0a, 0x08, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x36, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65,
0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e,
0x74, 0x73, 0x1a, 0x63, 0x0a, 0x0d, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x45, 0x6e,
0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x3c, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4c,
0x69, 0x73, 0x74, 0x4f, 0x66, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x6f, 0x64, 0x69,
0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x65, 0x73, 0x52, 0x05, 0x76, 0x61,
0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x13, 0x0a, 0x11, 0x41, 0x75, 0x63, 0x74, 0x69,
0x6f, 0x6e, 0x46, 0x65, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x50, 0x0a, 0x12,
0x41, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x12, 0x3a, 0x0a, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
0x66, 0x65, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x6f, 0x6f, 0x6c,
0x72, 0x70, 0x63, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x65,
0x52, 0x0c, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x65, 0x22, 0xd6,
0x05, 0x0a, 0x05, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x0d, 0x63, 0x68, 0x61, 0x6e,
0x6e, 0x65, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x11, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x75, 0x74, 0x50, 0x6f, 0x69,
0x6e, 0x74, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74,
0x12, 0x26, 0x0a, 0x0f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x61, 0x6d, 0x74, 0x5f,
0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e,
0x65, 0x6c, 0x41, 0x6d, 0x74, 0x53, 0x61, 0x74, 0x12, 0x36, 0x0a, 0x17, 0x63, 0x68, 0x61, 0x6e,
0x6e, 0x65, 0x6c, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x6c, 0x6f,
0x63, 0x6b, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x63, 0x68, 0x61, 0x6e, 0x6e,
0x65, 0x6c, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73,
0x12, 0x30, 0x0a, 0x14, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6c, 0x65, 0x61, 0x73,
0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12,
0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x69,
0x72, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x5f, 0x73, 0x61,
0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x70, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d,
0x53, 0x61, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e,
0x5f, 0x66, 0x65, 0x65, 0x5f, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f,
0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x65, 0x53, 0x61, 0x74, 0x12,
0x22, 0x0a, 0x0d, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x73, 0x61, 0x74,
0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x46, 0x65, 0x65,
0x53, 0x61, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x69, 0x6e, 0x67, 0x5f,
0x72, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04,
0x52, 0x11, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x74, 0x65, 0x50, 0x72,
0x69, 0x63, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x66, 0x69, 0x78,
0x65, 0x64, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x6f,
0x72, 0x64, 0x65, 0x72, 0x46, 0x69, 0x78, 0x65, 0x64, 0x52, 0x61, 0x74, 0x65, 0x12, 0x1f, 0x0a,
0x0b, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x0a, 0x20, 0x01,
0x28, 0x0c, 0x52, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x2e,
0x0a, 0x13, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f,
0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x11, 0x6d, 0x61, 0x74,
0x63, 0x68, 0x65, 0x64, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x1c,
0x0a, 0x09, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28,
0x08, 0x52, 0x09, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x12, 0x35, 0x0a, 0x17,
0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x6e,
0x6f, 0x64, 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x14, 0x63,
0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65,
0x4b, 0x65, 0x79, 0x12, 0x3d, 0x0a, 0x11, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6e,
0x6f, 0x64, 0x65, 0x5f, 0x74, 0x69, 0x65, 0x72, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11,
0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x54, 0x69, 0x65,
0x72, 0x52, 0x0f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4e, 0x6f, 0x64, 0x65, 0x54, 0x69,
0x65, 0x72, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x5f,
0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x73,
0x65, 0x6c, 0x66, 0x43, 0x68, 0x61, 0x6e, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x27,
0x0a, 0x0f, 0x73, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
0x6c, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x73, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72,
0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x22, 0x48, 0x0a, 0x0d, 0x4c, 0x65, 0x61, 0x73, 0x65,
0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x61, 0x74, 0x63,
0x68, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x08, 0x62, 0x61, 0x74,
0x63, 0x68, 0x49, 0x64, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74,
0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x08, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74,
0x73, 0x22, 0x96, 0x01, 0x0a, 0x0e, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x26, 0x0a, 0x06, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x73, 0x18, 0x01,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4c,
0x65, 0x61, 0x73, 0x65, 0x52, 0x06, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x73, 0x12, 0x2f, 0x0a, 0x14,
0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x61, 0x6d, 0x74, 0x5f, 0x65, 0x61, 0x72, 0x6e, 0x65, 0x64,
0x5f, 0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x74, 0x6f, 0x74, 0x61,
0x6c, 0x41, 0x6d, 0x74, 0x45, 0x61, 0x72, 0x6e, 0x65, 0x64, 0x53, 0x61, 0x74, 0x12, 0x2b, 0x0a,
0x12, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x61, 0x6d, 0x74, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f,
0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x74, 0x6f, 0x74, 0x61, 0x6c,
0x41, 0x6d, 0x74, 0x50, 0x61, 0x69, 0x64, 0x53, 0x61, 0x74, 0x22, 0x0f, 0x0a, 0x0d, 0x54, 0x6f,
0x6b, 0x65, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x3c, 0x0a, 0x0e, 0x54,
0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a,
0x06, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e,
0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x73, 0x61, 0x74, 0x54, 0x6f, 0x6b, 0x65,
0x6e, 0x52, 0x06, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x22, 0xbb, 0x02, 0x0a, 0x09, 0x4c, 0x73,
0x61, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x61, 0x73, 0x65, 0x5f,
0x6d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c,
0x62, 0x61, 0x73, 0x65, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c,
0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01,
0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12,
0x29, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d,
0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65,
0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x61, 0x6d,
0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04,
0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x50, 0x61, 0x69, 0x64,
0x4d, 0x73, 0x61, 0x74, 0x12, 0x31, 0x0a, 0x15, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x5f,
0x66, 0x65, 0x65, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20,
0x01, 0x28, 0x03, 0x52, 0x12, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x46, 0x65, 0x65, 0x50,
0x61, 0x69, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x69, 0x6d, 0x65, 0x5f,
0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x74,
0x69, 0x6d, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x78,
0x70, 0x69, 0x72, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x78, 0x70,
0x69, 0x72, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f,
0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x74, 0x6f, 0x72,
0x61, 0x67, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x16, 0x0a, 0x14, 0x4c, 0x65, 0x61, 0x73, 0x65,
0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22,
0x92, 0x03, 0x0a, 0x15, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x0f, 0x6c, 0x65, 0x61,
0x73, 0x65, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x32, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x65, 0x61,
0x73, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x2e, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0e, 0x6c, 0x65, 0x61, 0x73,
0x65, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x6e, 0x0a, 0x16, 0x6c, 0x65,
0x61, 0x73, 0x65, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x75, 0x63,
0x6b, 0x65, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x70, 0x6f, 0x6f,
0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4c, 0x65, 0x61, 0x73, 0x65,
0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x45,
0x6e, 0x74, 0x72, 0x79, 0x52, 0x14, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x1a, 0x41, 0x0a, 0x13, 0x4c, 0x65,
0x61, 0x73, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72,
0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03,
0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01,
0x28, 0x08, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x65, 0x0a,
0x19, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x75,
0x63, 0x6b, 0x65, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x32, 0x0a, 0x05,
0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x70, 0x6f,
0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x75,
0x63, 0x6b, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
0x3a, 0x02, 0x38, 0x01, 0x22, 0x16, 0x0a, 0x14, 0x4e, 0x65, 0x78, 0x74, 0x42, 0x61, 0x74, 0x63,
0x68, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xce, 0x01, 0x0a,
0x15, 0x4e, 0x65, 0x78, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x5f, 0x74,
0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x6f, 0x6e,
0x66, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x2c, 0x0a, 0x13, 0x66, 0x65, 0x65, 0x5f, 0x72,
0x61, 0x74, 0x65, 0x5f, 0x73, 0x61, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6b, 0x77, 0x18, 0x06,
0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x66, 0x65, 0x65, 0x52, 0x61, 0x74, 0x65, 0x53, 0x61, 0x74,
0x50, 0x65, 0x72, 0x4b, 0x77, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x5f, 0x74,
0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e,
0x63, 0x6c, 0x65, 0x61, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x3d,
0x0a, 0x1b, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x72, 0x65, 0x6e, 0x65, 0x77, 0x5f, 0x65, 0x78, 0x74,
0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18, 0x08, 0x20,
0x01, 0x28, 0x0d, 0x52, 0x18, 0x61, 0x75, 0x74, 0x6f, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x45, 0x78,
0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x22, 0x36, 0x0a,
0x11, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65,
0x79, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x0b, 0x6e, 0x6f, 0x64, 0x65, 0x50, 0x75,
0x62, 0x6b, 0x65, 0x79, 0x73, 0x22, 0x4c, 0x0a, 0x12, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x61, 0x74,
0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x0c, 0x6e,
0x6f, 0x64, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x13, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x6f, 0x64, 0x65,
0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x0b, 0x6e, 0x6f, 0x64, 0x65, 0x52, 0x61, 0x74, 0x69,
0x6e, 0x67, 0x73, 0x22, 0x10, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x84, 0x06, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66,
0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72,
0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73,
0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f,
0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x63, 0x63,
0x6f, 0x75, 0x6e, 0x74, 0x73, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x63,
0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x03, 0x20,
0x01, 0x28, 0x0d, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x41, 0x63, 0x74,
0x69, 0x76, 0x65, 0x12, 0x36, 0x0a, 0x17, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f,
0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x18, 0x04,
0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x41, 0x63,
0x74, 0x69, 0x76, 0x65, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x61,
0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x5f, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64,
0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73,
0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6f, 0x72, 0x64, 0x65,
0x72, 0x73, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b,
0x6f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x23, 0x0a, 0x0d, 0x6f,
0x72, 0x64, 0x65, 0x72, 0x73, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x07, 0x20, 0x01,
0x28, 0x0d, 0x52, 0x0c, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65,
0x12, 0x27, 0x0a, 0x0f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x5f, 0x61, 0x72, 0x63, 0x68, 0x69,
0x76, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6f, 0x72, 0x64, 0x65, 0x72,
0x73, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x63, 0x75, 0x72,
0x72, 0x65, 0x6e, 0x74, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68,
0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74,
0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x62,
0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x18,
0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x49, 0x6e,
0x76, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x12, 0x34, 0x0a, 0x0b, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x72,
0x61, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x6f,
0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67,
0x52, 0x0a, 0x6e, 0x6f, 0x64, 0x65, 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x1f, 0x0a, 0x0b,
0x6c, 0x73, 0x61, 0x74, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28,
0x0d, 0x52, 0x0a, 0x6c, 0x73, 0x61, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x12, 0x38, 0x0a,
0x18, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x61,
0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x65, 0x65, 0x72, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52,
0x16, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x54, 0x6f, 0x41, 0x75, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x65, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0e, 0x6e, 0x65, 0x77, 0x5f, 0x6e,
0x6f, 0x64, 0x65, 0x73, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52,
0x0c, 0x6e, 0x65, 0x77, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x49, 0x0a,
0x0b, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x0f, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74,
0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4d, 0x61, 0x72,
0x6b, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x6d, 0x61,
0x72, 0x6b, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x1a, 0x52, 0x0a, 0x0f, 0x4d, 0x61, 0x72, 0x6b,
0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b,
0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x29, 0x0a,
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70,
0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x49, 0x6e, 0x66,
0x6f, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x13, 0x0a, 0x11,
0x53, 0x74, 0x6f, 0x70, 0x44, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x22, 0x14, 0x0a, 0x12, 0x53, 0x74, 0x6f, 0x70, 0x44, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x5c, 0x0a, 0x13, 0x4f, 0x66, 0x66, 0x65, 0x72,
0x53, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x25,
0x0a, 0x0e, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x6e, 0x65, 0x67, 0x6f, 0x74, 0x69, 0x61, 0x74, 0x65,
0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x61, 0x75, 0x74, 0x6f, 0x4e, 0x65, 0x67, 0x6f,
0x74, 0x69, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x03, 0x62, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x69, 0x64,
0x52, 0x03, 0x62, 0x69, 0x64, 0x22, 0x27, 0x0a, 0x0d, 0x53, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72,
0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x22, 0xbf,
0x06, 0x0a, 0x14, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x64, 0x53, 0x69, 0x64, 0x65, 0x63, 0x61,
0x72, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69,
0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
0x6e, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x66, 0x66, 0x65, 0x72,
0x5f, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52,
0x0d, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x12, 0x2a,
0x0a, 0x11, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x61, 0x6d, 0x6f,
0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x6f, 0x66, 0x66, 0x65, 0x72,
0x50, 0x75, 0x73, 0x68, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3d, 0x0a, 0x1b, 0x6f, 0x66,
0x66, 0x65, 0x72, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52,
0x18, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x6f, 0x66, 0x66,
0x65, 0x72, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x07,
0x20, 0x01, 0x28, 0x0c, 0x52, 0x0f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x53, 0x69, 0x67, 0x6e, 0x50,
0x75, 0x62, 0x6b, 0x65, 0x79, 0x12, 0x27, 0x0a, 0x0f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x73,
0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0e,
0x6f, 0x66, 0x66, 0x65, 0x72, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x1d,
0x0a, 0x0a, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x61, 0x75, 0x74, 0x6f, 0x18, 0x09, 0x20, 0x01,
0x28, 0x08, 0x52, 0x09, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x41, 0x75, 0x74, 0x6f, 0x12, 0x32, 0x0a,
0x15, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f,
0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x13, 0x72, 0x65,
0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x50, 0x75, 0x62, 0x6b, 0x65,
0x79, 0x12, 0x3a, 0x0a, 0x19, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x6d,
0x75, 0x6c, 0x74, 0x69, 0x73, 0x69, 0x67, 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x0b,
0x20, 0x01, 0x28, 0x0c, 0x52, 0x17, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x4d,
0x75, 0x6c, 0x74, 0x69, 0x73, 0x69, 0x67, 0x50, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x12, 0x45, 0x0a,
0x1f, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x75, 0x6c, 0x74, 0x69,
0x73, 0x69, 0x67, 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78,
0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1c, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e,
0x74, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x73, 0x69, 0x67, 0x50, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x49,
0x6e, 0x64, 0x65, 0x78, 0x12, 0x26, 0x0a, 0x0f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x69,
0x64, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0d, 0x6f,
0x72, 0x64, 0x65, 0x72, 0x42, 0x69, 0x64, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x27, 0x0a, 0x0f,
0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18,
0x0e, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0e, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x69, 0x67, 0x6e,
0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x3f, 0x0a, 0x1c, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69,
0x6f, 0x6e, 0x5f, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e,
0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x19, 0x65, 0x78, 0x65,
0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61,
0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x65,
0x64, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d,
0x65, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x3a, 0x0a,
0x19, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x75, 0x6e, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63,
0x65, 0x64, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08,
0x52, 0x17, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x55, 0x6e, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63,
0x65, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x35, 0x0a, 0x17, 0x6f, 0x66, 0x66,
0x65, 0x72, 0x5f, 0x7a, 0x65, 0x72, 0x6f, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x5f, 0x63, 0x68, 0x61,
0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x6f, 0x66, 0x66, 0x65,
0x72, 0x5a, 0x65, 0x72, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
0x22, 0x57, 0x0a, 0x16, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x53, 0x69, 0x64, 0x65,
0x63, 0x61, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x69,
0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x69, 0x63, 0x6b,
0x65, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x6e, 0x65, 0x67, 0x6f, 0x74,
0x69, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x61, 0x75, 0x74, 0x6f,
0x4e, 0x65, 0x67, 0x6f, 0x74, 0x69, 0x61, 0x74, 0x65, 0x22, 0x35, 0x0a, 0x1b, 0x45, 0x78, 0x70,
0x65, 0x63, 0x74, 0x53, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x69, 0x63, 0x6b,
0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74,
0x22, 0x1e, 0x0a, 0x1c, 0x45, 0x78, 0x70, 0x65, 0x63, 0x74, 0x53, 0x69, 0x64, 0x65, 0x63, 0x61,
0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x22, 0x34, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x73,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x69, 0x64, 0x65, 0x63,
0x61, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x73, 0x69, 0x64,
0x65, 0x63, 0x61, 0x72, 0x49, 0x64, 0x22, 0x4f, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x69,
0x64, 0x65, 0x63, 0x61, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37,
0x0a, 0x07, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x1d, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65,
0x64, 0x53, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x07,
0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x22, 0x35, 0x0a, 0x14, 0x43, 0x61, 0x6e, 0x63, 0x65,
0x6c, 0x53, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x1d, 0x0a, 0x0a, 0x73, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0c, 0x52, 0x09, 0x73, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x49, 0x64, 0x22, 0x17,
0x0a, 0x15, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x53, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2a, 0x8c, 0x01, 0x0a, 0x0e, 0x41, 0x63, 0x63, 0x6f,
0x75, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x1d, 0x41, 0x43,
0x43, 0x4f, 0x55, 0x4e, 0x54, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x4e,
0x44, 0x5f, 0x44, 0x45, 0x50, 0x45, 0x4e, 0x44, 0x45, 0x4e, 0x54, 0x10, 0x00, 0x12, 0x1a, 0x0a,
0x16, 0x41, 0x43, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e,
0x5f, 0x4c, 0x45, 0x47, 0x41, 0x43, 0x59, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x41, 0x43, 0x43,
0x4f, 0x55, 0x4e, 0x54, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x41, 0x50,
0x52, 0x4f, 0x4f, 0x54, 0x10, 0x02, 0x12, 0x1e, 0x0a, 0x1a, 0x41, 0x43, 0x43, 0x4f, 0x55, 0x4e,
0x54, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x41, 0x50, 0x52, 0x4f, 0x4f,
0x54, 0x5f, 0x56, 0x32, 0x10, 0x03, 0x2a, 0x93, 0x01, 0x0a, 0x0c, 0x41, 0x63, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x50, 0x45, 0x4e, 0x44, 0x49,
0x4e, 0x47, 0x5f, 0x4f, 0x50, 0x45, 0x4e, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x50, 0x45, 0x4e,
0x44, 0x49, 0x4e, 0x47, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x10, 0x01, 0x12, 0x08, 0x0a,
0x04, 0x4f, 0x50, 0x45, 0x4e, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x58, 0x50, 0x49, 0x52,
0x45, 0x44, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x5f,
0x43, 0x4c, 0x4f, 0x53, 0x45, 0x44, 0x10, 0x04, 0x12, 0x0a, 0x0a, 0x06, 0x43, 0x4c, 0x4f, 0x53,
0x45, 0x44, 0x10, 0x05, 0x12, 0x13, 0x0a, 0x0f, 0x52, 0x45, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x59,
0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x06, 0x12, 0x11, 0x0a, 0x0d, 0x50, 0x45, 0x4e,
0x44, 0x49, 0x4e, 0x47, 0x5f, 0x42, 0x41, 0x54, 0x43, 0x48, 0x10, 0x07, 0x2a, 0x50, 0x0a, 0x0a,
0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x52,
0x45, 0x50, 0x41, 0x52, 0x45, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x43, 0x43, 0x45, 0x50,
0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x45,
0x44, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x49, 0x47, 0x4e, 0x45, 0x44, 0x10, 0x03, 0x12,
0x0d, 0x0a, 0x09, 0x46, 0x49, 0x4e, 0x41, 0x4c, 0x49, 0x5a, 0x45, 0x44, 0x10, 0x04, 0x2a, 0xbe,
0x01, 0x0a, 0x11, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65,
0x61, 0x73, 0x6f, 0x6e, 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x16,
0x0a, 0x12, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x5f, 0x4d, 0x49, 0x53, 0x42, 0x45, 0x48, 0x41,
0x56, 0x49, 0x4f, 0x52, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x42, 0x41, 0x54, 0x43, 0x48, 0x5f,
0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x4d, 0x49, 0x53, 0x4d, 0x41, 0x54, 0x43, 0x48,
0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x41, 0x52, 0x54, 0x49, 0x41, 0x4c, 0x5f, 0x52, 0x45,
0x4a, 0x45, 0x43, 0x54, 0x5f, 0x43, 0x4f, 0x4c, 0x4c, 0x41, 0x54, 0x45, 0x52, 0x41, 0x4c, 0x10,
0x03, 0x12, 0x21, 0x0a, 0x1d, 0x50, 0x41, 0x52, 0x54, 0x49, 0x41, 0x4c, 0x5f, 0x52, 0x45, 0x4a,
0x45, 0x43, 0x54, 0x5f, 0x44, 0x55, 0x50, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x45, 0x5f, 0x50, 0x45,
0x45, 0x52, 0x10, 0x04, 0x12, 0x29, 0x0a, 0x25, 0x50, 0x41, 0x52, 0x54, 0x49, 0x41, 0x4c, 0x5f,
0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x46,
0x55, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x05, 0x32,
0x93, 0x12, 0x0a, 0x06, 0x54, 0x72, 0x61, 0x64, 0x65, 0x72, 0x12, 0x3c, 0x0a, 0x07, 0x47, 0x65,
0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x17, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e,
0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18,
0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x0a, 0x53, 0x74, 0x6f, 0x70,
0x44, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x12, 0x1a, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63,
0x2e, 0x53, 0x74, 0x6f, 0x70, 0x44, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x6f,
0x70, 0x44, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x4b, 0x0a, 0x0c, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12,
0x1c, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x41,
0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e,
0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x41, 0x63, 0x63,
0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3c, 0x0a, 0x0b,
0x49, 0x6e, 0x69, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1b, 0x2e, 0x70, 0x6f,
0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, 0x69, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e,
0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x10, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72,
0x70, 0x63, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x4b, 0x0a, 0x0c, 0x4c, 0x69,
0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x1c, 0x2e, 0x70, 0x6f, 0x6f,
0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74,
0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72,
0x70, 0x63, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a, 0x0c, 0x43, 0x6c, 0x6f, 0x73, 0x65,
0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70,
0x63, 0x2e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e,
0x43, 0x6c, 0x6f, 0x73, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x54, 0x0a, 0x0f, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77,
0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1f, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70,
0x63, 0x2e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e,
0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72,
0x70, 0x63, 0x2e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x41, 0x63, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, 0x0a, 0x0e, 0x44, 0x65,
0x70, 0x6f, 0x73, 0x69, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x2e, 0x70,
0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x41, 0x63,
0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x70,
0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x41, 0x63,
0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a,
0x0c, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x2e,
0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x41, 0x63, 0x63,
0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x70, 0x6f,
0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x41, 0x63, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, 0x0a, 0x0e, 0x42, 0x75,
0x6d, 0x70, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x46, 0x65, 0x65, 0x12, 0x1e, 0x2e, 0x70,
0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x75, 0x6d, 0x70, 0x41, 0x63, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x46, 0x65, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x70,
0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x75, 0x6d, 0x70, 0x41, 0x63, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x46, 0x65, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x54, 0x0a,
0x0f, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73,
0x12, 0x1f, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x76,
0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x1a, 0x20, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x63, 0x6f,
0x76, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x12, 0x6c, 0x0a, 0x17, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x6f,
0x64, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x65, 0x73, 0x12, 0x27,
0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74,
0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x65, 0x73,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70,
0x63, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x12, 0x48, 0x0a, 0x0b, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72,
0x12, 0x1b, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, 0x62, 0x6d, 0x69,
0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e,
0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x4f, 0x72,
0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x0a, 0x4c,
0x69, 0x73, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x12, 0x1a, 0x2e, 0x70, 0x6f, 0x6f, 0x6c,
0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e,
0x4c, 0x69, 0x73, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x12, 0x48, 0x0a, 0x0b, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x4f, 0x72, 0x64, 0x65,
0x72, 0x12, 0x1b, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x61, 0x6e, 0x63,
0x65, 0x6c, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c,
0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x4f,
0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x0a,
0x51, 0x75, 0x6f, 0x74, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x1a, 0x2e, 0x70, 0x6f, 0x6f,
0x6c, 0x72, 0x70, 0x63, 0x2e, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63,
0x2e, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x0a, 0x41, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65,
0x65, 0x12, 0x1a, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x75, 0x63, 0x74,
0x69, 0x6f, 0x6e, 0x46, 0x65, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e,
0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46,
0x65, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4f, 0x0a, 0x0e, 0x4c, 0x65,
0x61, 0x73, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1d, 0x2e, 0x70,
0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x44, 0x75, 0x72, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x70, 0x6f,
0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4e, 0x0a, 0x0d, 0x4e,
0x65, 0x78, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x2e, 0x70,
0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x65, 0x78, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68,
0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x70, 0x6f,
0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x65, 0x78, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49,
0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4e, 0x0a, 0x0d, 0x42,
0x61, 0x74, 0x63, 0x68, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x12, 0x1d, 0x2e, 0x70,
0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x53, 0x6e, 0x61, 0x70,
0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x70, 0x6f,
0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x53, 0x6e, 0x61, 0x70, 0x73,
0x68, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x0d, 0x47,
0x65, 0x74, 0x4c, 0x73, 0x61, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x12, 0x16, 0x2e, 0x70,
0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x54,
0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a,
0x06, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x73, 0x12, 0x16, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70,
0x63, 0x2e, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
0x17, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x73,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x0b, 0x4e, 0x6f, 0x64, 0x65,
0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x1a, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70,
0x63, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x6f,
0x64, 0x65, 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x51, 0x0a, 0x0e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f,
0x74, 0x73, 0x12, 0x1e, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x61, 0x74,
0x63, 0x68, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x61, 0x74,
0x63, 0x68, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x0c, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x53, 0x69, 0x64, 0x65,
0x63, 0x61, 0x72, 0x12, 0x1c, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x66,
0x66, 0x65, 0x72, 0x53, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x1a, 0x16, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x69, 0x64, 0x65,
0x63, 0x61, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x4a, 0x0a, 0x0f, 0x52, 0x65, 0x67,
0x69, 0x73, 0x74, 0x65, 0x72, 0x53, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x12, 0x1f, 0x2e, 0x70,
0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x53,
0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e,
0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x54,
0x69, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x63, 0x0a, 0x14, 0x45, 0x78, 0x70, 0x65, 0x63, 0x74, 0x53,
0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x24, 0x2e,
0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x78, 0x70, 0x65, 0x63, 0x74, 0x53, 0x69,
0x64, 0x65, 0x63, 0x61, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x78,
0x70, 0x65, 0x63, 0x74, 0x53, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e,
0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x13, 0x44, 0x65,
0x63, 0x6f, 0x64, 0x65, 0x53, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x65,
0x74, 0x12, 0x16, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x69, 0x64, 0x65,
0x63, 0x61, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x1a, 0x1d, 0x2e, 0x70, 0x6f, 0x6f, 0x6c,
0x72, 0x70, 0x63, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x64, 0x53, 0x69, 0x64, 0x65, 0x63,
0x61, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x4b, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74,
0x53, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x73, 0x12, 0x1c, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72,
0x70, 0x63, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x73, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63,
0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x73, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4e, 0x0a, 0x0d, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x53,
0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x12, 0x1d, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63,
0x2e, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x53, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x2e,
0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x53, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x27, 0x5a, 0x25, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e,
0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e, 0x67, 0x6c, 0x61, 0x62,
0x73, 0x2f, 0x70, 0x6f, 0x6f, 0x6c, 0x2f, 0x70, 0x6f, 0x6f, 0x6c, 0x72, 0x70, 0x63, 0x62, 0x06,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_trader_proto_rawDescOnce sync.Once
file_trader_proto_rawDescData = file_trader_proto_rawDesc
)
func file_trader_proto_rawDescGZIP() []byte {
file_trader_proto_rawDescOnce.Do(func() {
file_trader_proto_rawDescData = protoimpl.X.CompressGZIP(file_trader_proto_rawDescData)
})
return file_trader_proto_rawDescData
}
var file_trader_proto_enumTypes = make([]protoimpl.EnumInfo, 4)
var file_trader_proto_msgTypes = make([]protoimpl.MessageInfo, 71)
var file_trader_proto_goTypes = []any{
(AccountVersion)(0), // 0: poolrpc.AccountVersion
(AccountState)(0), // 1: poolrpc.AccountState
(MatchState)(0), // 2: poolrpc.MatchState
(MatchRejectReason)(0), // 3: poolrpc.MatchRejectReason
(*InitAccountRequest)(nil), // 4: poolrpc.InitAccountRequest
(*QuoteAccountRequest)(nil), // 5: poolrpc.QuoteAccountRequest
(*QuoteAccountResponse)(nil), // 6: poolrpc.QuoteAccountResponse
(*ListAccountsRequest)(nil), // 7: poolrpc.ListAccountsRequest
(*ListAccountsResponse)(nil), // 8: poolrpc.ListAccountsResponse
(*Output)(nil), // 9: poolrpc.Output
(*OutputWithFee)(nil), // 10: poolrpc.OutputWithFee
(*OutputsWithImplicitFee)(nil), // 11: poolrpc.OutputsWithImplicitFee
(*CloseAccountRequest)(nil), // 12: poolrpc.CloseAccountRequest
(*CloseAccountResponse)(nil), // 13: poolrpc.CloseAccountResponse
(*WithdrawAccountRequest)(nil), // 14: poolrpc.WithdrawAccountRequest
(*WithdrawAccountResponse)(nil), // 15: poolrpc.WithdrawAccountResponse
(*DepositAccountRequest)(nil), // 16: poolrpc.DepositAccountRequest
(*DepositAccountResponse)(nil), // 17: poolrpc.DepositAccountResponse
(*RenewAccountRequest)(nil), // 18: poolrpc.RenewAccountRequest
(*RenewAccountResponse)(nil), // 19: poolrpc.RenewAccountResponse
(*BumpAccountFeeRequest)(nil), // 20: poolrpc.BumpAccountFeeRequest
(*BumpAccountFeeResponse)(nil), // 21: poolrpc.BumpAccountFeeResponse
(*Account)(nil), // 22: poolrpc.Account
(*SubmitOrderRequest)(nil), // 23: poolrpc.SubmitOrderRequest
(*SubmitOrderResponse)(nil), // 24: poolrpc.SubmitOrderResponse
(*ListOrdersRequest)(nil), // 25: poolrpc.ListOrdersRequest
(*ListOrdersResponse)(nil), // 26: poolrpc.ListOrdersResponse
(*CancelOrderRequest)(nil), // 27: poolrpc.CancelOrderRequest
(*CancelOrderResponse)(nil), // 28: poolrpc.CancelOrderResponse
(*Order)(nil), // 29: poolrpc.Order
(*Bid)(nil), // 30: poolrpc.Bid
(*Ask)(nil), // 31: poolrpc.Ask
(*QuoteOrderRequest)(nil), // 32: poolrpc.QuoteOrderRequest
(*QuoteOrderResponse)(nil), // 33: poolrpc.QuoteOrderResponse
(*OrderEvent)(nil), // 34: poolrpc.OrderEvent
(*UpdatedEvent)(nil), // 35: poolrpc.UpdatedEvent
(*MatchEvent)(nil), // 36: poolrpc.MatchEvent
(*RecoverAccountsRequest)(nil), // 37: poolrpc.RecoverAccountsRequest
(*RecoverAccountsResponse)(nil), // 38: poolrpc.RecoverAccountsResponse
(*AccountModificationFeesRequest)(nil), // 39: poolrpc.AccountModificationFeesRequest
(*AccountModificationFee)(nil), // 40: poolrpc.AccountModificationFee
(*ListOfAccountModificationFees)(nil), // 41: poolrpc.ListOfAccountModificationFees
(*AccountModificationFeesResponse)(nil), // 42: poolrpc.AccountModificationFeesResponse
(*AuctionFeeRequest)(nil), // 43: poolrpc.AuctionFeeRequest
(*AuctionFeeResponse)(nil), // 44: poolrpc.AuctionFeeResponse
(*Lease)(nil), // 45: poolrpc.Lease
(*LeasesRequest)(nil), // 46: poolrpc.LeasesRequest
(*LeasesResponse)(nil), // 47: poolrpc.LeasesResponse
(*TokensRequest)(nil), // 48: poolrpc.TokensRequest
(*TokensResponse)(nil), // 49: poolrpc.TokensResponse
(*LsatToken)(nil), // 50: poolrpc.LsatToken
(*LeaseDurationRequest)(nil), // 51: poolrpc.LeaseDurationRequest
(*LeaseDurationResponse)(nil), // 52: poolrpc.LeaseDurationResponse
(*NextBatchInfoRequest)(nil), // 53: poolrpc.NextBatchInfoRequest
(*NextBatchInfoResponse)(nil), // 54: poolrpc.NextBatchInfoResponse
(*NodeRatingRequest)(nil), // 55: poolrpc.NodeRatingRequest
(*NodeRatingResponse)(nil), // 56: poolrpc.NodeRatingResponse
(*GetInfoRequest)(nil), // 57: poolrpc.GetInfoRequest
(*GetInfoResponse)(nil), // 58: poolrpc.GetInfoResponse
(*StopDaemonRequest)(nil), // 59: poolrpc.StopDaemonRequest
(*StopDaemonResponse)(nil), // 60: poolrpc.StopDaemonResponse
(*OfferSidecarRequest)(nil), // 61: poolrpc.OfferSidecarRequest
(*SidecarTicket)(nil), // 62: poolrpc.SidecarTicket
(*DecodedSidecarTicket)(nil), // 63: poolrpc.DecodedSidecarTicket
(*RegisterSidecarRequest)(nil), // 64: poolrpc.RegisterSidecarRequest
(*ExpectSidecarChannelRequest)(nil), // 65: poolrpc.ExpectSidecarChannelRequest
(*ExpectSidecarChannelResponse)(nil), // 66: poolrpc.ExpectSidecarChannelResponse
(*ListSidecarsRequest)(nil), // 67: poolrpc.ListSidecarsRequest
(*ListSidecarsResponse)(nil), // 68: poolrpc.ListSidecarsResponse
(*CancelSidecarRequest)(nil), // 69: poolrpc.CancelSidecarRequest
(*CancelSidecarResponse)(nil), // 70: poolrpc.CancelSidecarResponse
nil, // 71: poolrpc.AccountModificationFeesResponse.AccountsEntry
nil, // 72: poolrpc.LeaseDurationResponse.LeaseDurationsEntry
nil, // 73: poolrpc.LeaseDurationResponse.LeaseDurationBucketsEntry
nil, // 74: poolrpc.GetInfoResponse.MarketInfoEntry
(*auctioneerrpc.OutPoint)(nil), // 75: poolrpc.OutPoint
(*auctioneerrpc.InvalidOrder)(nil), // 76: poolrpc.InvalidOrder
(auctioneerrpc.OrderState)(0), // 77: poolrpc.OrderState
(auctioneerrpc.OrderChannelType)(0), // 78: poolrpc.OrderChannelType
(auctioneerrpc.AuctionType)(0), // 79: poolrpc.AuctionType
(auctioneerrpc.NodeTier)(0), // 80: poolrpc.NodeTier
(auctioneerrpc.ChannelAnnouncementConstraints)(0), // 81: poolrpc.ChannelAnnouncementConstraints
(auctioneerrpc.ChannelConfirmationConstraints)(0), // 82: poolrpc.ChannelConfirmationConstraints
(*auctioneerrpc.ExecutionFee)(nil), // 83: poolrpc.ExecutionFee
(*auctioneerrpc.NodeRating)(nil), // 84: poolrpc.NodeRating
(auctioneerrpc.DurationBucketState)(0), // 85: poolrpc.DurationBucketState
(*auctioneerrpc.MarketInfo)(nil), // 86: poolrpc.MarketInfo
(*auctioneerrpc.BatchSnapshotRequest)(nil), // 87: poolrpc.BatchSnapshotRequest
(*auctioneerrpc.BatchSnapshotsRequest)(nil), // 88: poolrpc.BatchSnapshotsRequest
(*auctioneerrpc.BatchSnapshotResponse)(nil), // 89: poolrpc.BatchSnapshotResponse
(*auctioneerrpc.BatchSnapshotsResponse)(nil), // 90: poolrpc.BatchSnapshotsResponse
}
var file_trader_proto_depIdxs = []int32{
0, // 0: poolrpc.InitAccountRequest.version:type_name -> poolrpc.AccountVersion
22, // 1: poolrpc.ListAccountsResponse.accounts:type_name -> poolrpc.Account
9, // 2: poolrpc.OutputsWithImplicitFee.outputs:type_name -> poolrpc.Output
10, // 3: poolrpc.CloseAccountRequest.output_with_fee:type_name -> poolrpc.OutputWithFee
11, // 4: poolrpc.CloseAccountRequest.outputs:type_name -> poolrpc.OutputsWithImplicitFee
9, // 5: poolrpc.WithdrawAccountRequest.outputs:type_name -> poolrpc.Output
0, // 6: poolrpc.WithdrawAccountRequest.new_version:type_name -> poolrpc.AccountVersion
22, // 7: poolrpc.WithdrawAccountResponse.account:type_name -> poolrpc.Account
0, // 8: poolrpc.DepositAccountRequest.new_version:type_name -> poolrpc.AccountVersion
22, // 9: poolrpc.DepositAccountResponse.account:type_name -> poolrpc.Account
0, // 10: poolrpc.RenewAccountRequest.new_version:type_name -> poolrpc.AccountVersion
22, // 11: poolrpc.RenewAccountResponse.account:type_name -> poolrpc.Account
75, // 12: poolrpc.Account.outpoint:type_name -> poolrpc.OutPoint
1, // 13: poolrpc.Account.state:type_name -> poolrpc.AccountState
0, // 14: poolrpc.Account.version:type_name -> poolrpc.AccountVersion
31, // 15: poolrpc.SubmitOrderRequest.ask:type_name -> poolrpc.Ask
30, // 16: poolrpc.SubmitOrderRequest.bid:type_name -> poolrpc.Bid
76, // 17: poolrpc.SubmitOrderResponse.invalid_order:type_name -> poolrpc.InvalidOrder
31, // 18: poolrpc.ListOrdersResponse.asks:type_name -> poolrpc.Ask
30, // 19: poolrpc.ListOrdersResponse.bids:type_name -> poolrpc.Bid
77, // 20: poolrpc.Order.state:type_name -> poolrpc.OrderState
34, // 21: poolrpc.Order.events:type_name -> poolrpc.OrderEvent
78, // 22: poolrpc.Order.channel_type:type_name -> poolrpc.OrderChannelType
79, // 23: poolrpc.Order.auction_type:type_name -> poolrpc.AuctionType
29, // 24: poolrpc.Bid.details:type_name -> poolrpc.Order
80, // 25: poolrpc.Bid.min_node_tier:type_name -> poolrpc.NodeTier
29, // 26: poolrpc.Ask.details:type_name -> poolrpc.Order
81, // 27: poolrpc.Ask.announcement_constraints:type_name -> poolrpc.ChannelAnnouncementConstraints
82, // 28: poolrpc.Ask.confirmation_constraints:type_name -> poolrpc.ChannelConfirmationConstraints
35, // 29: poolrpc.OrderEvent.state_change:type_name -> poolrpc.UpdatedEvent
36, // 30: poolrpc.OrderEvent.matched:type_name -> poolrpc.MatchEvent
77, // 31: poolrpc.UpdatedEvent.previous_state:type_name -> poolrpc.OrderState
77, // 32: poolrpc.UpdatedEvent.new_state:type_name -> poolrpc.OrderState
2, // 33: poolrpc.MatchEvent.match_state:type_name -> poolrpc.MatchState
3, // 34: poolrpc.MatchEvent.reject_reason:type_name -> poolrpc.MatchRejectReason
40, // 35: poolrpc.ListOfAccountModificationFees.modification_fees:type_name -> poolrpc.AccountModificationFee
71, // 36: poolrpc.AccountModificationFeesResponse.accounts:type_name -> poolrpc.AccountModificationFeesResponse.AccountsEntry
83, // 37: poolrpc.AuctionFeeResponse.execution_fee:type_name -> poolrpc.ExecutionFee
75, // 38: poolrpc.Lease.channel_point:type_name -> poolrpc.OutPoint
80, // 39: poolrpc.Lease.channel_node_tier:type_name -> poolrpc.NodeTier
45, // 40: poolrpc.LeasesResponse.leases:type_name -> poolrpc.Lease
50, // 41: poolrpc.TokensResponse.tokens:type_name -> poolrpc.LsatToken
72, // 42: poolrpc.LeaseDurationResponse.lease_durations:type_name -> poolrpc.LeaseDurationResponse.LeaseDurationsEntry
73, // 43: poolrpc.LeaseDurationResponse.lease_duration_buckets:type_name -> poolrpc.LeaseDurationResponse.LeaseDurationBucketsEntry
84, // 44: poolrpc.NodeRatingResponse.node_ratings:type_name -> poolrpc.NodeRating
84, // 45: poolrpc.GetInfoResponse.node_rating:type_name -> poolrpc.NodeRating
74, // 46: poolrpc.GetInfoResponse.market_info:type_name -> poolrpc.GetInfoResponse.MarketInfoEntry
30, // 47: poolrpc.OfferSidecarRequest.bid:type_name -> poolrpc.Bid
63, // 48: poolrpc.ListSidecarsResponse.tickets:type_name -> poolrpc.DecodedSidecarTicket
41, // 49: poolrpc.AccountModificationFeesResponse.AccountsEntry.value:type_name -> poolrpc.ListOfAccountModificationFees
85, // 50: poolrpc.LeaseDurationResponse.LeaseDurationBucketsEntry.value:type_name -> poolrpc.DurationBucketState
86, // 51: poolrpc.GetInfoResponse.MarketInfoEntry.value:type_name -> poolrpc.MarketInfo
57, // 52: poolrpc.Trader.GetInfo:input_type -> poolrpc.GetInfoRequest
59, // 53: poolrpc.Trader.StopDaemon:input_type -> poolrpc.StopDaemonRequest
5, // 54: poolrpc.Trader.QuoteAccount:input_type -> poolrpc.QuoteAccountRequest
4, // 55: poolrpc.Trader.InitAccount:input_type -> poolrpc.InitAccountRequest
7, // 56: poolrpc.Trader.ListAccounts:input_type -> poolrpc.ListAccountsRequest
12, // 57: poolrpc.Trader.CloseAccount:input_type -> poolrpc.CloseAccountRequest
14, // 58: poolrpc.Trader.WithdrawAccount:input_type -> poolrpc.WithdrawAccountRequest
16, // 59: poolrpc.Trader.DepositAccount:input_type -> poolrpc.DepositAccountRequest
18, // 60: poolrpc.Trader.RenewAccount:input_type -> poolrpc.RenewAccountRequest
20, // 61: poolrpc.Trader.BumpAccountFee:input_type -> poolrpc.BumpAccountFeeRequest
37, // 62: poolrpc.Trader.RecoverAccounts:input_type -> poolrpc.RecoverAccountsRequest
39, // 63: poolrpc.Trader.AccountModificationFees:input_type -> poolrpc.AccountModificationFeesRequest
23, // 64: poolrpc.Trader.SubmitOrder:input_type -> poolrpc.SubmitOrderRequest
25, // 65: poolrpc.Trader.ListOrders:input_type -> poolrpc.ListOrdersRequest
27, // 66: poolrpc.Trader.CancelOrder:input_type -> poolrpc.CancelOrderRequest
32, // 67: poolrpc.Trader.QuoteOrder:input_type -> poolrpc.QuoteOrderRequest
43, // 68: poolrpc.Trader.AuctionFee:input_type -> poolrpc.AuctionFeeRequest
51, // 69: poolrpc.Trader.LeaseDurations:input_type -> poolrpc.LeaseDurationRequest
53, // 70: poolrpc.Trader.NextBatchInfo:input_type -> poolrpc.NextBatchInfoRequest
87, // 71: poolrpc.Trader.BatchSnapshot:input_type -> poolrpc.BatchSnapshotRequest
48, // 72: poolrpc.Trader.GetLsatTokens:input_type -> poolrpc.TokensRequest
46, // 73: poolrpc.Trader.Leases:input_type -> poolrpc.LeasesRequest
55, // 74: poolrpc.Trader.NodeRatings:input_type -> poolrpc.NodeRatingRequest
88, // 75: poolrpc.Trader.BatchSnapshots:input_type -> poolrpc.BatchSnapshotsRequest
61, // 76: poolrpc.Trader.OfferSidecar:input_type -> poolrpc.OfferSidecarRequest
64, // 77: poolrpc.Trader.RegisterSidecar:input_type -> poolrpc.RegisterSidecarRequest
65, // 78: poolrpc.Trader.ExpectSidecarChannel:input_type -> poolrpc.ExpectSidecarChannelRequest
62, // 79: poolrpc.Trader.DecodeSidecarTicket:input_type -> poolrpc.SidecarTicket
67, // 80: poolrpc.Trader.ListSidecars:input_type -> poolrpc.ListSidecarsRequest
69, // 81: poolrpc.Trader.CancelSidecar:input_type -> poolrpc.CancelSidecarRequest
58, // 82: poolrpc.Trader.GetInfo:output_type -> poolrpc.GetInfoResponse
60, // 83: poolrpc.Trader.StopDaemon:output_type -> poolrpc.StopDaemonResponse
6, // 84: poolrpc.Trader.QuoteAccount:output_type -> poolrpc.QuoteAccountResponse
22, // 85: poolrpc.Trader.InitAccount:output_type -> poolrpc.Account
8, // 86: poolrpc.Trader.ListAccounts:output_type -> poolrpc.ListAccountsResponse
13, // 87: poolrpc.Trader.CloseAccount:output_type -> poolrpc.CloseAccountResponse
15, // 88: poolrpc.Trader.WithdrawAccount:output_type -> poolrpc.WithdrawAccountResponse
17, // 89: poolrpc.Trader.DepositAccount:output_type -> poolrpc.DepositAccountResponse
19, // 90: poolrpc.Trader.RenewAccount:output_type -> poolrpc.RenewAccountResponse
21, // 91: poolrpc.Trader.BumpAccountFee:output_type -> poolrpc.BumpAccountFeeResponse
38, // 92: poolrpc.Trader.RecoverAccounts:output_type -> poolrpc.RecoverAccountsResponse
42, // 93: poolrpc.Trader.AccountModificationFees:output_type -> poolrpc.AccountModificationFeesResponse
24, // 94: poolrpc.Trader.SubmitOrder:output_type -> poolrpc.SubmitOrderResponse
26, // 95: poolrpc.Trader.ListOrders:output_type -> poolrpc.ListOrdersResponse
28, // 96: poolrpc.Trader.CancelOrder:output_type -> poolrpc.CancelOrderResponse
33, // 97: poolrpc.Trader.QuoteOrder:output_type -> poolrpc.QuoteOrderResponse
44, // 98: poolrpc.Trader.AuctionFee:output_type -> poolrpc.AuctionFeeResponse
52, // 99: poolrpc.Trader.LeaseDurations:output_type -> poolrpc.LeaseDurationResponse
54, // 100: poolrpc.Trader.NextBatchInfo:output_type -> poolrpc.NextBatchInfoResponse
89, // 101: poolrpc.Trader.BatchSnapshot:output_type -> poolrpc.BatchSnapshotResponse
49, // 102: poolrpc.Trader.GetLsatTokens:output_type -> poolrpc.TokensResponse
47, // 103: poolrpc.Trader.Leases:output_type -> poolrpc.LeasesResponse
56, // 104: poolrpc.Trader.NodeRatings:output_type -> poolrpc.NodeRatingResponse
90, // 105: poolrpc.Trader.BatchSnapshots:output_type -> poolrpc.BatchSnapshotsResponse
62, // 106: poolrpc.Trader.OfferSidecar:output_type -> poolrpc.SidecarTicket
62, // 107: poolrpc.Trader.RegisterSidecar:output_type -> poolrpc.SidecarTicket
66, // 108: poolrpc.Trader.ExpectSidecarChannel:output_type -> poolrpc.ExpectSidecarChannelResponse
63, // 109: poolrpc.Trader.DecodeSidecarTicket:output_type -> poolrpc.DecodedSidecarTicket
68, // 110: poolrpc.Trader.ListSidecars:output_type -> poolrpc.ListSidecarsResponse
70, // 111: poolrpc.Trader.CancelSidecar:output_type -> poolrpc.CancelSidecarResponse
82, // [82:112] is the sub-list for method output_type
52, // [52:82] is the sub-list for method input_type
52, // [52:52] is the sub-list for extension type_name
52, // [52:52] is the sub-list for extension extendee
0, // [0:52] is the sub-list for field type_name
}
func init() { file_trader_proto_init() }
func file_trader_proto_init() {
if File_trader_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_trader_proto_msgTypes[0].Exporter = func(v any, i int) any {
switch v := v.(*InitAccountRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[1].Exporter = func(v any, i int) any {
switch v := v.(*QuoteAccountRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[2].Exporter = func(v any, i int) any {
switch v := v.(*QuoteAccountResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[3].Exporter = func(v any, i int) any {
switch v := v.(*ListAccountsRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[4].Exporter = func(v any, i int) any {
switch v := v.(*ListAccountsResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[5].Exporter = func(v any, i int) any {
switch v := v.(*Output); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[6].Exporter = func(v any, i int) any {
switch v := v.(*OutputWithFee); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[7].Exporter = func(v any, i int) any {
switch v := v.(*OutputsWithImplicitFee); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[8].Exporter = func(v any, i int) any {
switch v := v.(*CloseAccountRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[9].Exporter = func(v any, i int) any {
switch v := v.(*CloseAccountResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[10].Exporter = func(v any, i int) any {
switch v := v.(*WithdrawAccountRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[11].Exporter = func(v any, i int) any {
switch v := v.(*WithdrawAccountResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[12].Exporter = func(v any, i int) any {
switch v := v.(*DepositAccountRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[13].Exporter = func(v any, i int) any {
switch v := v.(*DepositAccountResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[14].Exporter = func(v any, i int) any {
switch v := v.(*RenewAccountRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[15].Exporter = func(v any, i int) any {
switch v := v.(*RenewAccountResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[16].Exporter = func(v any, i int) any {
switch v := v.(*BumpAccountFeeRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[17].Exporter = func(v any, i int) any {
switch v := v.(*BumpAccountFeeResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[18].Exporter = func(v any, i int) any {
switch v := v.(*Account); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[19].Exporter = func(v any, i int) any {
switch v := v.(*SubmitOrderRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[20].Exporter = func(v any, i int) any {
switch v := v.(*SubmitOrderResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[21].Exporter = func(v any, i int) any {
switch v := v.(*ListOrdersRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[22].Exporter = func(v any, i int) any {
switch v := v.(*ListOrdersResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[23].Exporter = func(v any, i int) any {
switch v := v.(*CancelOrderRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[24].Exporter = func(v any, i int) any {
switch v := v.(*CancelOrderResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[25].Exporter = func(v any, i int) any {
switch v := v.(*Order); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[26].Exporter = func(v any, i int) any {
switch v := v.(*Bid); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[27].Exporter = func(v any, i int) any {
switch v := v.(*Ask); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[28].Exporter = func(v any, i int) any {
switch v := v.(*QuoteOrderRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[29].Exporter = func(v any, i int) any {
switch v := v.(*QuoteOrderResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[30].Exporter = func(v any, i int) any {
switch v := v.(*OrderEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[31].Exporter = func(v any, i int) any {
switch v := v.(*UpdatedEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[32].Exporter = func(v any, i int) any {
switch v := v.(*MatchEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[33].Exporter = func(v any, i int) any {
switch v := v.(*RecoverAccountsRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[34].Exporter = func(v any, i int) any {
switch v := v.(*RecoverAccountsResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[35].Exporter = func(v any, i int) any {
switch v := v.(*AccountModificationFeesRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[36].Exporter = func(v any, i int) any {
switch v := v.(*AccountModificationFee); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[37].Exporter = func(v any, i int) any {
switch v := v.(*ListOfAccountModificationFees); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[38].Exporter = func(v any, i int) any {
switch v := v.(*AccountModificationFeesResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[39].Exporter = func(v any, i int) any {
switch v := v.(*AuctionFeeRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[40].Exporter = func(v any, i int) any {
switch v := v.(*AuctionFeeResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[41].Exporter = func(v any, i int) any {
switch v := v.(*Lease); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[42].Exporter = func(v any, i int) any {
switch v := v.(*LeasesRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[43].Exporter = func(v any, i int) any {
switch v := v.(*LeasesResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[44].Exporter = func(v any, i int) any {
switch v := v.(*TokensRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[45].Exporter = func(v any, i int) any {
switch v := v.(*TokensResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[46].Exporter = func(v any, i int) any {
switch v := v.(*LsatToken); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[47].Exporter = func(v any, i int) any {
switch v := v.(*LeaseDurationRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[48].Exporter = func(v any, i int) any {
switch v := v.(*LeaseDurationResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[49].Exporter = func(v any, i int) any {
switch v := v.(*NextBatchInfoRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[50].Exporter = func(v any, i int) any {
switch v := v.(*NextBatchInfoResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[51].Exporter = func(v any, i int) any {
switch v := v.(*NodeRatingRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[52].Exporter = func(v any, i int) any {
switch v := v.(*NodeRatingResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[53].Exporter = func(v any, i int) any {
switch v := v.(*GetInfoRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[54].Exporter = func(v any, i int) any {
switch v := v.(*GetInfoResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[55].Exporter = func(v any, i int) any {
switch v := v.(*StopDaemonRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[56].Exporter = func(v any, i int) any {
switch v := v.(*StopDaemonResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[57].Exporter = func(v any, i int) any {
switch v := v.(*OfferSidecarRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[58].Exporter = func(v any, i int) any {
switch v := v.(*SidecarTicket); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[59].Exporter = func(v any, i int) any {
switch v := v.(*DecodedSidecarTicket); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[60].Exporter = func(v any, i int) any {
switch v := v.(*RegisterSidecarRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[61].Exporter = func(v any, i int) any {
switch v := v.(*ExpectSidecarChannelRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[62].Exporter = func(v any, i int) any {
switch v := v.(*ExpectSidecarChannelResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[63].Exporter = func(v any, i int) any {
switch v := v.(*ListSidecarsRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[64].Exporter = func(v any, i int) any {
switch v := v.(*ListSidecarsResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[65].Exporter = func(v any, i int) any {
switch v := v.(*CancelSidecarRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_trader_proto_msgTypes[66].Exporter = func(v any, i int) any {
switch v := v.(*CancelSidecarResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
file_trader_proto_msgTypes[0].OneofWrappers = []any{
(*InitAccountRequest_AbsoluteHeight)(nil),
(*InitAccountRequest_RelativeHeight)(nil),
(*InitAccountRequest_ConfTarget)(nil),
(*InitAccountRequest_FeeRateSatPerKw)(nil),
}
file_trader_proto_msgTypes[1].OneofWrappers = []any{
(*QuoteAccountRequest_ConfTarget)(nil),
}
file_trader_proto_msgTypes[6].OneofWrappers = []any{
(*OutputWithFee_ConfTarget)(nil),
(*OutputWithFee_FeeRateSatPerKw)(nil),
}
file_trader_proto_msgTypes[8].OneofWrappers = []any{
(*CloseAccountRequest_OutputWithFee)(nil),
(*CloseAccountRequest_Outputs)(nil),
}
file_trader_proto_msgTypes[10].OneofWrappers = []any{
(*WithdrawAccountRequest_AbsoluteExpiry)(nil),
(*WithdrawAccountRequest_RelativeExpiry)(nil),
}
file_trader_proto_msgTypes[12].OneofWrappers = []any{
(*DepositAccountRequest_AbsoluteExpiry)(nil),
(*DepositAccountRequest_RelativeExpiry)(nil),
}
file_trader_proto_msgTypes[14].OneofWrappers = []any{
(*RenewAccountRequest_AbsoluteExpiry)(nil),
(*RenewAccountRequest_RelativeExpiry)(nil),
}
file_trader_proto_msgTypes[19].OneofWrappers = []any{
(*SubmitOrderRequest_Ask)(nil),
(*SubmitOrderRequest_Bid)(nil),
}
file_trader_proto_msgTypes[20].OneofWrappers = []any{
(*SubmitOrderResponse_InvalidOrder)(nil),
(*SubmitOrderResponse_AcceptedOrderNonce)(nil),
}
file_trader_proto_msgTypes[30].OneofWrappers = []any{
(*OrderEvent_StateChange)(nil),
(*OrderEvent_Matched)(nil),
}
file_trader_proto_msgTypes[36].OneofWrappers = []any{
(*AccountModificationFee_FeeNull)(nil),
(*AccountModificationFee_FeeValue)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_trader_proto_rawDesc,
NumEnums: 4,
NumMessages: 71,
NumExtensions: 0,
NumServices: 1,
},
GoTypes: file_trader_proto_goTypes,
DependencyIndexes: file_trader_proto_depIdxs,
EnumInfos: file_trader_proto_enumTypes,
MessageInfos: file_trader_proto_msgTypes,
}.Build()
File_trader_proto = out.File
file_trader_proto_rawDesc = nil
file_trader_proto_goTypes = nil
file_trader_proto_depIdxs = nil
}